https://confengine.com/conferences/selenium-conf-2022/proposal/17141/changing-tyres-in-a-moving-car-making-functional-test-automation-effective
In my experience, I have seen teams struggle with more than one, and in many cases, all of the above statements.
On retrospection, I have realized, that most of these challenges are because of a combination of the following issues:
Lack of holistic vision, understanding, skills, and capabilities for taking on this seemingly easy activity of functional test automation
Lack of time for design, implementation, and maintenance of the automated test code
In this session, I will share, with examples, the features & capabilities that are not used right in Test Automation implementation resulting in you answering “NO” to the above statements. These are anti-patterns of functional automation implementation and have a negative impact on the quality of feedback from your automated tests.
More importantly, I will share approaches and solutions of how you can avoid these anti-patterns and evolve to answer “YES” to each of the above statements.
3. @BagmarAnand 3
• Automated tests run fast.
• The automated test execution needs no manual
intervention to run/complete successfully – across
environments, in parallel, for all team members & CI
execution.
Raise your hand if you disagree
4. @BagmarAnand 4
• Automated tests are triggered automatically on any
product change.
• Automated tests can run, on-demand, on different
(supported) browsers/devices with no changes in code or
configuration.
Raise your hand if you disagree
5. @BagmarAnand 5
• The automated test code is clean and easy to maintain,
reuse and scale.
• Your automated tests can run in any order, and in parallel.
Raise your hand if you disagree
6. @BagmarAnand 6
• Consolidated reports and trends from test runs are
available in a central reporting server for the team.
• You have all the relevant information to do RCA of failed
tests readily available.
Raise your hand if you disagree
7. @BagmarAnand 7
• Your automated functional tests give deterministic
feedback - i.e. no flaky/intermittent test failures.
• As a result of your functional automation, manual testing
efforts are reduced.
Raise your hand if you disagree
14. @BagmarAnand 14
Ideas that seem good, but are not!
https://likesmag.com/wp-content/uploads/2017/10/funny-design-fails.jpg
15. @BagmarAnand 15
Why do we do this?
https://martech.org/wp-content/uploads/2015/08/shortcut-strategy-maze-path-direction-ss-1920.jpg
16. @BagmarAnand 16
Caught in the headlights!
https://worlddeer.org/wp-content/uploads/elementor/thumbs/deer-in-headlights-meaning-pge44ctbg1qqspz7fp4erd9gy0dwohfbykadnxpp54.jpg
44. 45
@BagmarAnand
Test Data
&
Data Provider
Code Quality
Waits
Exception Handling
Test Data & Data Provider
Test Execution Priority
Test Execution configuration – testng.xml
Magic – Rerun of failed tests, automatically
Page Objects
50. @BagmarAnand 51
• Data is complex
• Needs to mimic “real” data
• Needs to be unique
• Data can be nested
• Though specified as static, may need to be Dynamic
• Data can be shared and reused
Criteria for Test Data
51. @BagmarAnand 52
• In Test implementation
• In Test specification / intent
• In code … separate data structures / classes / etc.
• External files
Different ways to specify Test Data
52. @BagmarAnand 53
• Automated tests should have dedicated test data
• This data should not be mixed with data required for manual / exploratory testing
• Test data approach:
• Identify test data requirements to enable manual testing and automated testing
• Parallel execution, and CI-based execution to be kept in mind!
• Seed from Production / higher environments
• Create using REST APIs
Test Data for Automation
67. 68
@BagmarAnand
• Run specific subset of tests on demand, based on tag name
• Configurable from command line
• No code change required
Configurable Test Execution
68. 69
@BagmarAnand
Magic – Rerun
failed tests,
automatically
Code Quality
Waits
Exception Handling
Test Data & Data Provider
Test Execution Priority
Test Execution configuration – testng.xml
Magic – Rerun of failed tests, automatically
Page Objects
95. @BagmarAnand 96
Take a step back
Think about the big picture
https://study.com/cimages/course-image/big-picture-thinking-in-business_183979_large.jpg