1. BDD Scenarios in a
Testing Strategy
A case study
16/11/2023 – AgileTD
Gáspár Nagy
coach • trainer • bdd addict • creator of specflow
https://bddbooks.com • “Discovery” • “Formulation”
@gasparnagy • gaspar@specsolutions.eu
ChatGPT
free
6. SpecSync for Azure DevOps
synchronize • share • trace
<TRX>
<JUnit XML>
<Cucumber JSON>
<…>
synchronize
(push)
(pull)
run tests
BUG
1234
share
(publish test results)
trace
7. SpecSync for Azure DevOps
synchronize • share • trace
Started in 2015
Cross-platform (Win/Linux/macOS/Docker)
Supports all major BDD Frameworks (SpecFlow, Cucumber, Behave, …)
Supports 5 Azure DevOps versions, Jira Data Center & Jira Cloud
60k+ line of code (C#)
Survived 3 major updates and an ADO API change
Build with BDD/SpecFlow (~300 scenarios)
Uses SpecSync for traceability – eat your own dogfood
8. SpecSync for Azure DevOps
synchronize • share • trace
Rule: Can create new Test Case work items from scenarios
Scenario: A new scenario is linked to a new Test Case
Given there is an Azure DevOps project
And there is a scenario in the local repository
"""
Scenario: Sample scenario
Given there is something
When I do something
Then something will happen
"""
When the local repository is synchronized with push
Then a new Test Case work item "Scenario: Sample scenario" is created in the project
And the Test Case contains the following test steps
| step |
| Given there is something |
| When I do something |
| Then something will happen |
And a tag "@tc:[id-of-new-test-case]" is added to the scenario in the local repository