8.1.3 Restructure the Automated Testware to Align with System Under Test Updates
Part of 8 Continuous Improvement, 8.1 Continuous Improvement Opportunities for Test Automation.
Learning objective: TAE-8.1.3 (K3).
In short
When the system changes, change the test automation with it, in small, measured steps, so that tests keep running reliably.
Key ideas
- Any change, however small, can affect the reliability and performance of the TAS.
- Identify what changes: testware, custom function libraries, or the operating system.
- Change incrementally, with a minimum viable product mindset: measure the effect on a limited run of tests, then roll out fully, and finish with a full regression run. Find the root cause of any new failures, to make sure the improvement did not cause them.
- Improve core libraries with new, more efficient techniques, for this project and future ones.
- Consolidate functions that act on the same kind of control, such as several functions that each read one type of dropdown, into fewer, more general ones.
- Refactor the architecture to fit the changed SUT, rather than bolting new features on.
- Keep naming consistent with the standards already in place.
- Review existing tests: split tests that are complex and slow, and remove tests that rarely run or no longer add value.
In this programme
When your team's product changes a page, the page object from Module 11 is where you make the change: update its locator, run that page's tests, then the full regression suite in CI.
Teach it (45 minutes)
Change one id on a copy of a page used by the suite. Pairs make the smallest change to the testware that fixes it, run a limited set of tests, then the full suite, and note how many files they had to touch.
Check yourself
- Why change test automation incrementally?
- What is the final step that shows a change had no adverse effect?
- When should an existing test be split, or removed?
Previous: 8.1.2 Analyze the Technical Aspects of a Deployed Test Automation Solution and Provide Recommendations for Improvement · Contents · Next: 8.1.4 Summarize Opportunities for Use of Test Automation Tools
Based on the ISTQB Certified Tester Advanced Level Test Automation Engineering (CTAL-TAE) syllabus, version 2.0, section 8.1.3. The syllabus is © International Software Testing Qualifications Board (ISTQB®); ISTQB® is a registered trademark of the ISTQB. Copyright © 2024 the authors of the syllabus: Andrew Pollner (Chair), Péter Földházi, Patrick Quilter, Gergely Ágnecz, and László Szikszai. This page explains its concepts in our own words, for teaching, and is not an accredited course or a substitute for the syllabus.
View this document on GitHub materials/modules/module-5-istqb-certified-tester-advanced-level-test-automation-engineer/syllabus/8-1-3-restructure-the-automated-testware-to-align-with-system-under-test-updates.md