19. An Aside:
Why does execution time matter?
Sagar checks in code and the tests run
7
20. An Aside:
Why does execution time matter?
Sagar checks in code and the tests run
Bogdan checks in code an hour later. The tests run
7
21. An Aside:
Why does execution time matter?
Sagar checks in code and the tests run
Bogdan checks in code an hour later. The tests run
Two hours later, the build has broken.
7
22. An Aside:
Why does execution time matter?
Sagar checks in code and the tests run
Bogdan checks in code an hour later. The tests run
Two hours later, the build has broken.
Who broke it?
7
27. How do we minimize these?
1. Reduce the number of tests.
11
28. How do we minimize these?
1. Reduce the number of tests.
2. Reduce the coupling between tests and data
(or make our own data)
11
29. How do we minimize these?
1. Reduce the number of tests.
2. Reduce the coupling between tests and data
(or make our own data)
3. Reduce the time it takes to write and modify tests.
11
36. Business Acceptance Criteria
Core User Paths
Business-critical Stuff
Cannot be allowed to fail
Run on CI with every commit
Small and very maintainable
13
52. 3. Abstractions and Data Models
Data from YAML Files easily available
Data Models to maintain state between steps
And for Comparison
23
53. 3. Abstractions and Data Models
Data from YAML Files easily available
Data Models to maintain state between steps
And for Comparison
UI automation for often-used Model-tasks
23
56. 3. Abstractions and Data Models
Data from YAML Files easily available
Data Models to maintain state between steps
And for Comparison
UI automation for often-used Model-tasks
26
57. 3. Abstractions and Data Models
Data from YAML Files easily available
Data Models to maintain state between steps
And for Comparison
UI automation for often-used Model-tasks
Page Objects to represent pages under test
26
72. Given a bug…
1. Write a quick (and brittle) feature file
2. Write some quick (and dirty) step definitions
38
73. Given a bug…
1. Write a quick (and brittle) feature file
2. Write some quick (and dirty) step definitions
3. Check it Fails correctly
38
74. Given a bug…
1. Write a quick (and brittle) feature file
2. Write some quick (and dirty) step definitions
3. Check it Fails correctly
4. Commit and assign ticket to Devs
38