If the last Testcase in a SilkTest TestPlan is manual, then TestPlanExit() will not be executed, what can be done?
The example below shows a Testplan which ends in a manual test, this example will not call the TestPlanExit() function at the end of the run. This is due to the last testcase in the run being manual as seen below;
TestPlan - Dud.pln ;
Results - Dud.res ;
However, by placing the manual test anywhere in the Testplan but at the end, this behaviour is eliminated and the TestPlanExit() function is called and executed as expected. As seen in the example below.
To be able to successfully call a TestPlanExit() function from a Testplan, make sure that any manual tests are not called at the end of the run. There are two choices when working around this behaviour, either
- change the position of these tests in the sequence so that manual tests do not get called last OR
- add a dummy Testcase (which does nothing) to the end of the Testplan to initiate the TestPlanExit() function.
TestPlan - Dud2.pln ;
Results - Dud2.res
This behaviour is documented in the Release Notes for SilkTest 6.0 which state, if the last testcase in your testplan is a manual testcase, TextPlanExit() is not called.