CS576: Assignment 4

Introduction

The goals of this assignment are to: (a) test the effectiveness of your black-box test suite from Assignment 2; (b) test the effectiveness of your white-box test suite from Assignment 3; (c) learn how to use the jumble mutation testing tool.

In the second and third assignments you created a suite of black-box and white-box test cases. The effectiveness of these test suites was measured using code coverage criteria such as statement and branch coverage.

In this assignment you are asked to determined the effectiveness of these test suites by creating several mutations of the ATM code and then computing how many of these mutations caused at least one test case to fail. This process is called mutation testing and, fortunately, there exists the jumble tool, which automatically performs the code mutations and the mutation rate calculations. You are asked to download, install and use the jumble mutation testing tool to create mutations of the ATM code and then use the tool to compute the mutation rate for: (a) the black-box test suite; and (b) the white-box test suite. If the mutation rate is under 100% (i.e., not all mutants of the code were killed) add new black-box and white-box test case to achieve a score that is at least close to 100%.

The jumble tool is available for download at http://jumble.sourceforge.net/ . You are encouraged to consult the resources on the jumble website as well as the CS576 course slides on mutation testing.

Deliverables

The deliverables for this assignment are: Submit your assignment by 6:00PM of the due date via e-mail to the TA (evs23 @ drexel.edu). Please package the deliverables as a single zip file. Late assignments will not be accepted.