Scenario 2: New test candidate, hours to turn it round, and R&D have refactored the whole GUI!
Your situation
R&D have just released their next test candidate to you several days late, and you have a couple of days before the planned alpha release. The GUI has been extensively restructured.
Solution
This situation is traditionally a nightmare, as all automated test scripts have to be verified and changed to reflect the structure of the new GUI. Which in turns means verifying thousands of lines of test script code.
However, with SVaT the situation presents itself very differently. You can refactor your tests in an hour or two, and spend the rest of the day extending your test coverage. And, all the tests remain reusable for the next test candidate.
The steps you take using
SVaT are outlined here:
Expand all, Collapse All
- Preparation:
Install SVaT (if you need to) and the AUT (more...less...)
If you have lost your original installation, reinstall SVaT (the System Verification and Test suite) and install the new revision of the AUT (the application under test).If you have lost your original installation, reinstall SVaT (the System Verification and Test suite) and install the new revision of the AUT (the application under test), i.e.
Time: at least 10 minutes.- Install SVaT
Run the provided SVaT installer and make a few decisions about where to install SVaT.
You need at least the Personal Edition of SVaT for this.
If you have not already installed Java you must install it before you can install SVaT. Java is included with SVaT, or you can use an existing installation if appropriate.
Time: 5 minutes.
- Install the Application Under Test (AUT)
Next step is to install the application under test following whatever instructions your R&D group gave you.
Time: at least 5 minutes
- Install SVaT
- Template
Re-capture: Re-capture of the GUI structure (more...less...)
The next step is to capture the new GUI structure of the AUT such that you can easily compare it to the existing structure.
Time: about 20 minutes to 1 hour 10 minutesThe next step is to capture the new GUI structure of the AUT such that you can easily compare it to the existing structure.
Different test automation tools may have different ways to do this, but here we will assume that your AUT is written in Java, and will be tested with the Test Performer that comes with SVaT.
- Start the Test Performer in recording
mode
Start the Test Performer in recording mode by launching the TestPerformerRecorder script. The Test Performer's simple GUI will appear, which enables you to record the GUI structure and content of your application at various points in the execution.
Time: 1 minute
- Start the AUT
Next you wrap the AUT in a special Test Performer wrapper and execute it. This will link the AUT to the Test Performer you have just started so that you can record the current GUI elements in the application.
Time: 10 minutes
- Capture the GUI structure in Test
Performer
Now you can capture the new/current layout of the GUI elements displayed by the AUT. You do this by putting the AUT into the same states as the first time the GUI elements were recorded, then entering the same name of the Template, and pressing "Record".
Repeat this for each different set of windows/GUI elements shown by the AUT.
Once you have recorded all the different sets of windows/GUI elements you need, close the Test Performer Recorder window and the new definitions will be saved.
Time: 10 minutes to 1 hour
- Start the Test Performer in recording
mode
- Template Update:
Update of the GUI elements in the templates (more...less...)
Compare the newly recorded GUI structure with the GUI structure recorded for the original test candidate, and change the templates in the SVaT Verification Designer wherever they differ.
Time: 1-2 hoursCompare the newly recorded GUI structure with the GUI structure recorded for the original test candidate, and change the templates in the SVaT Verification Designer wherever they differ.
If a GUI element has just changed its position (in the GUI structure) or name, then only the template element needs changing. If a GUI element is added or removed then you need to update the test scripts wherever this element is used.
Time: 1-2 hours - Generation and
Execution: Generate test scripts, run them against the AUT (more...less...)
Once you have made the changes, you simply generate your test scripts again, and all the test scripts are updated! Your test scripts are now ready to be executed on the new candidate.
Time: from about 5 minutesOnce you have made the changes, you simply generate your test scripts again, and all the test scripts are updated! Your test scripts are now ready to be executed on the new candidate.
- Generate test scripts
You generate your test script again exactly the same way as the first time, which means you just select the parameters (like: test automation tool, full or reduced set, etc.) and presses the "Generate" button.
Time: 1-10 minutes (depending on number of test scripts generated)
- Run the generated test scripts
Once the test scripts have been generated, they can be executed using the automated test tool they were generated for, in this case SVaT's Test Performer.
Time: from 5 minutes
- Generate test scripts
- Fault detection:
Examination of Results (more...less...)
Once the test scripts have been executed, you can load the results back into SVaT and examine them in direct relation to the modified Design.
Time: 5 minutes to 1 hour (depending on number of errors)Once the test scripts have been executed, you can load the results back into SVaT and examine them in direct relation to the modified Design.
You will see the results directly represented in relation to your original design. The original design is overlaid with the test results, and errors highlighted there. This can save a great deal of time because it draws attention directly to the failing steps and can eliminate the need to investigate duplicate errors.
Time: 5 minutes to 1 hour (depending on number of errors) - Outcomes
The benefits of this approach include:
- You can update a significant number of test scripts in a couple of hours.
- You can still load and see (most of) the results from previous versions of your design with the new design.
- You have an automated trace of the tests you have made and executed, and can use this as documentation in your test reports and as an audit trail later, as needed.
- If you should be unavailable at a critical time, then it will be much easier for somebody else to adapt your test scripts because the syntax used in SVaT is so intuitive.
