The Great Race (Group 11)

Test Plan

COP 4331C Fall 2014

Introduction

Reference Documents:

Description of Test Environment

An android simulator will be used, BlueStacks, to simulate the application during initial testing before the application is moved onto an android device for in depth testing. The software will be tested by both developers and users thus the application can be tested on different hardware. When the application runs on different devices this enables insight on how the application performance is affected by different hardware environments and address any issues that may arise.

Stopping Criteria
The application will stop testing on two conditions. The first condition is that if the testing is yielding frequent crashes or if there is large abundance of logic errors being performed and will be sent back to development until a more stable build is released. Once the large errors are dealt with, then the smaller errors such as cosmetic errors can be fixed. Due to the small number of variables in this program, once there are no known errors a relatively small number of test cases need to be administered. Such as, three: one with a small number of users, one with a large number of users, and one with mixed Android devices. It is only "good enough to deliver" when there are no known errors. 

Description of Individual Test Cases
Connection Test: the most important thing in the software is able to keep constant connectivity, therefore the software will be periodically checking connection. Every 30 seconds the software will check for network connection to keep track of each players’ location.

Create Game Test: This will test if the user can create a game. The user will try to create a game and then the server will need to be checked to see if the game was actually created.

Join Game Test: This will test if other players can join a game once it has been created. Users will join the game using the application and then the server will have to be checked to make sure the users have been added to the game party.

Terminating Protocol Test: This will test if a player has opted to leave the game. If the user was the game master then the game should terminate, if not the game should continue but without the user that left. A non-game master user must try to leave the application, then the server must check to make sure that user has been booted and the GPS doesn’t keep tracking. If the game master leaves then the server must shut down all communication with the entire party. An error message may be sent to each member. If a user is idle for longer than the specified limited idle time by the game master, then the server should boot that player as if he/she quit on their own terms. A message may be sent to other users of this happening.

Task completion test: This test will decided the winner. Test current GPS coordinates with the goal coordinates. The first person to have matching coordinates is the winner. This can be tested every time the players’ location is tested.

GPS test: Make sure the device is communicating with the GPS satellite. Have the server tell the device if it has or hasn’t received the coordinates from the satellite. If it hasn’t it should send an error, and tell the user that GPS connectivity has been lost.