Recall that the scenario testing section from earlier in this tutorial (Scenario Testing) proceeded through a series of actions and validations, but all within the same environment? The goal of this tutorial lesson is to demonstrate how you can string together a few different types of tests in order to exercise end-to-end scenarios that invoke different interfaces to a business system or model a multistep transaction in a heterogeneous environment.
Here is an overview of the steps we want the end-to-end test suite to perform:
- Initialize the ParaBank database via an HTTP SOAP request.
- Deposit $5000 into account #13344 via an HTTP SOAP request.
- Verify the new balance via an HTTP SOAP request.
- Login to ParaBank web application in a new web browser.
- Verify the new balance via HTML validation.
- Reset the database (initialize again).
- Verify the balance for account #13344 changed after reinitialization (via HTTP SOAP request).
To set up and run this end-to-end test:
- Go to File > New > Project.
- Choose SOAtest > Empty Project and click Next.
- Enter
End to End Testing
as the Project Name and click Finish. - Copy, paste, and move the tests from EndToEndSOAP.tst and EndToEndWeb.tst (in the examples provided with SOAtest) to construct the scenario shown below:
Be sure to copy the Environment from one of the test cases (or the SOAP Clients and Browser Playback tools won’t know where to direct their traffic). You will need to copy the SOAP clients twice. - If you run the scenario at this point, Test 6: getAccount 2 will fail due to the XML Assertor currently chained to it (if you copied and pasted it).
- Open the XML Assertor chained to Test 6: getAccount 2, click the Configuration tab, choose Value Assertion – balance, and change the expected value to
1231.10
. - Save the tool.
- Rerun the scenario. No failures should be reported.