Testing Plan by LiamMessam


									                                          Testing Plan


Three levels of testing will be employed. The first is unit testing. The second is integration.
And the third is game-play testing. Unit testing ensures that each module behaves according to
specs. Integration testing ensures that the modules interface correctly. Game-play testing
ensures the original intent and features of the game are implemented. Tests will be written for
and before each module. A set of tests cases, together known as the test suite, will be
developed at each testing level.

Unit Testing

The goal of unit testing is to isolate each unit of the program and show that each individual part
is correctly working. This ensures that bugs found at the system level could be isolated to the
interfacing. Repeatable unit tests will be written in the JUnit testing framework. JUnit is a
simple framework to write repeatable tests. It is an instance of the xUnit architecture for unit
testing frameworks. Since this project is done using the OOP paradigm, we will define a unit as
a class (the model, the view, and the controller classes). The programmer(s) responsible for
writing the certain class will be responsible for writing its unit test. The Eclipse IDE comes with
a JUnit testing module.

Integration Testing

Integration testing will occur after unit testing and before game-play testing. Integration testing
takes as its input modules that have been unit tested, groups them in larger aggregates, applies
tests defined in an integration test plan to those aggregates, and delivers as its output the
integrated system ready for game-play testing.

The purpose of integration testing is to verify functional, performance, and reliability
requirements placed on major design items, in this case, the model, view, and controller. JUnit
will be used for integration testing.

Game-play Testing.

Once the first beta version of Labyrinthos is completed, it will be distributed to as many users
as possible. Game-play bugs will then be reported to a repository and squashed as they come.

Android provides various tools for employing these tests; The Android ADT plug-in for eclipse
integrates these tools.
   DDMS - A graphical program that supports port forwarding (so you can set up breakpoints in
    your code in your IDE), screen captures on the emulator, thread and stack information, and
    many other features. You can also run logcat to retrieve your Log messages. See the linked
    topic for more information.
   logcat - Dumps a log of system messages. The messages include a stack trace when the
    emulator throws an error, as well as Log messages. To run logcat, see the linked topic.
   Traceview - Android can save a log of method calls and times to a logging file that you can view
    in a graphical reader called Traceview. See the linked topic for more information.

    Regression Testing

    The squashing of game-play bugs could and will most likely cause previously working parts of
    the program to stop working. Whenever a “fix” is made to Labyrinthos, test cases in the test
    suite will be rerun to ensure that the “fix” did not break the functionality of any other part of
    the system.

To top