Link Search Menu Expand Document

Lab 6: Test planning

Purpose

The goal of this assignement is to select appropriate approahces among the testing techniques that were covered in the lectures on black-box and white-box testing and to apply them to a real piece of software.

For this lab, parts 1 and 2 are mandatory for the passing grade, part 3 is for those aiming for a 4 or 5.

Part 1 - White-box testing - Mandatory

Choose one of the search algorithms implemented in Java and draw a control flow graph, calculate the cyclomatic complexity and a set of basis paths. Use this to deduce the set of test-cases. If you make any hypotheses, state them clearly.

Part 2 - Integration testing - Mandatory

In this part, you will apply the path based integration approach. Choose an integration of one of the methods of the insurance service with other layers of the application (a method call from one layer to a method from an underlying layer). If you have not implemented all methods, either choose a method that contains code or write a simple implementation. For the code of your choice build a flow graph representation, select an interesting test-case and provide the list of Module Executions Paths (MEPs). From the MEPs defined build a MM-path graph.

Part 3 - Black-box testing and test planning - Optional

Read up on test planning in section 8.2 Test Design & Implementation Process. In this assignment, you will write a test plan for the InsuranceService we have implemented in Part 2. The test plan should be written based on the interface specification, using black-box testing. You will choose the appropriate testing techniques and stopping criteria. To express the expected behaviour of your test you can define how the database is initialised.

The level of detail expected is comparable with the examples we covered in the Test Planning lecture. You can make assumptions as necessary, for example, regading existing existing risks. For step TD6, it is not necessary to give specific scripts, just a general idea based on your experience in Lab1.

Reporting your results

See the instructions on the course page general submission instructions.

  • For part 1 you will submit the code excerpt you are testing, the control flow graph, as well as the calculations for the cyclomatic complexity and basic paths and your test table.

  • For part 2 you will submit the code extract your are testing, the test case you chose as well as your MEP and MM graphs.

  • For part 3 you will submit your test plan complete with any assumtions you made.