Test Plan and Cases Version 1.1

Test Plan and Cases (TPC)

Newlette Coins

Team Number - 06

Members / Name / Email / Primary Role / Secondary Role
/ Akshaya Ravichandran / / Requirements Engineer / UML Modeler
/ John Leibowitz / / IIV&V / Quality Focal Point
/ Nitin Surana / / Life Cycle Planner / Software Architect
/ Remya Ramachandran / / Feasibility Analyst / Implementer
/ Santhoshi Priyanka Gooty Agraharam / / Project Manager / Tester
/ Theerapat Chawannakul / / Builder / Implementer
/ Vujjini Anuraag / / Implementer / Prototyper

Version History

Date / Author / Version / Changes made / Rationale
11/23/16 / PG / 1.0 / ● Added template and several test cases. / ● Initial draft for Asbuilt package
12/03/16 / PG / 1.1 / ●  Completed TPC. / ●  Included remaining test-cases.

Table of Contents

1. Introduction………………………………………………………………………….8

1.1 Purpose of TPC…………………………………………………………………….8

1.2 Status of TPC……...……………………………………………………………….8

1.3 Scope………………....…………………………………………………………….8

1.4 Focus………………….………………………………...………………………….8

1.5 Type of Testing…………………………….……………………………………….8

2. Test Strategy and Preparation………………………………………………………..9

2.1 Hardware preparation………………………………..…………………………..9

2.2 Software preparation……………………………………...……………………..9

2.3 Other pre-test preparations………………………………..……………………..9

2.4 Requirements Traceability…………………………………..…………………..10

3. Test Identification……………………………………………………………………………..13

3.1 Test Identifier-1: Bomb placement on grid for game play……………………...12

3.2 Test Identifier-2: LeaderBoard with high Scores……………………………………….18

3.3 Test Identifier-3: Device Orientation…………………………………………....24

3.4 Test Identifier-4: Login and Forgot Password…………………………………..30

3.5 Test Identifier-5: Register as a new user in the game…………….……………..36

3.6 Test Identifier-6: User balance calculation on detonation…………………...….55

3.7 Test Identifier-7: Game Animation……………………………………………...61

3.8 Test Identifier-8: Edit Profile…….……………………………………………...67

4. Resources and schedule……………………………………………………………...72

4.1 Resources………………………………...……………………………………...72

4.2 Staffing and Training Needs…………..………………………………………...72

4.3 Schedule………………………………………………………………………...73

Table of tables

Table 1 / Hardware Preparation / 9
Table 2 / Software Preparation / 9
Table 3 / Requirements Traceability Matrix / 10
Table 3.1.1 / TC-01-01 Check clicking on any empty tile places a bomb. / 13
Table 3.1.2 / TC-01-02 Clicking on tile with bomb removes the bomb. / 14
Table 3.1.3 / TC-01-03 Maximum of 4 bombs can be placed on game board tile. / 15
Table 3.1..4 / TC-01-04 Check clicking on any area outside the 4*4 tile doesn’t place any bombs. / 16
Table 3.1.5 / TC-01-05 Detonate button disabled until all 4 bombs are placed / 17
Table 3.2.1 / TC-02-01 - Check the leaderboard when there are no scores to display. / 19
Table 3.2.2 / TC-02-02 - Check the leaderboard if it properly displays the names and scores of the top 5 players. / 20
Table 3.2.3 / TC-02-03 - Check if the leaderboard properly displays the name of the player which is very long. / 21
Table 3.2.4 / TC-02-04 - Check if the leaderboard properly displays a very high score appropriately. / 22
Table 3.2.5 / TC-02-05 - Check if the leaderboard properly displays results when there are two or more players with the same top score. / 23
Table 3.3.1 / TC-03-01 Check if the user is logged in and plays game in landscape device orientation. / 25
Table 3.3.2 / TC-03-02 Check if the user is logged in portrait mode and plays game in landscape device orientation. / 26
Table 3.3.3 / TC-03-03 Check if the user plays game in landscape device orientation and tries to change to portrait mode. / 27
Table 3.3.4 / TC-03-04 Check if the game progress is lost when the user tries to go back to landscape mode from portrait mode after the popup. / 28
Table 3.3.5 / TC-03-05 Check if the game screen size scales accordingly when the browser size changes. / 29
Table 3.4.1 / TC-04-01 Check no inputs during Login / 31
Table 3.4.2 / TC-04-02 Check Correct email and password during Login. / 32
Table 3.4.3 / TC-04-03 Check Correct email and incorrect password during Login. / 33
Table 3.4.4 / TC-04-04 Check Incorrect email and Correct password during Login. / 34
Table 3.4.5 / TC-04-05 Check Forgot Password function with registered email / 35
Table 3.4.6 / TC-04-06 Check Forgot Password function with unregistered email / 36
Table 3.5.1 / TC-05-01 Registering with a blank form / 38
Table 3.5.2 / TC-05-02 Registering with an already registered email id / 40
Table 3.5.3 / TC-05-03 Registering with mismatching password and re-enter password entries / 43
Table 3.5.4 / TC-05-04 Registering without an email id / 46
Table 3.5.5 / TC-05-05 Registering without a password / 49
Table 3.6.1 / TC-06-01 Exact user balance available for a given multiplier / 53
Table 3.6.2 / TC-06-02 Insufficient balance and hence, no deduction / 54
Table 3.6.3 / TC-06-03 Exact user balance available for a given multiplier & hence, deduction for spentPoints and addition for winPoints (winPoints>0) / 55
Table 3.6.4 / TC-06-04 More than required user balance resulting in deduction of spentPoints & addition for winPoints (winPoints>0) / 56
Table 3.6.5 / TC-06-05 More than required user balance / 57
Table 3.7.1 / TC-07-01 Starting a new game animation / 59
Table 3.7.2 / TC-07-02 Finishing a game animation / 60
Table 3.7.3 / TC-07-03 Place a bomb animation / 61
Table 3.7.4 / TC-07-04 Detonate all bombs animation / 62
Table 3.7.5 / TC-07-05 Win points earned animation / 63
Table 3.8.1 / TC-08-01 Submit form with blank first name. / 65
Table 3.8.2 / TC-08-02 Submit form with blank last name. / 66
Table 3.8.3 / TC-08-03 Register it with already existing email. / 67
Table 3.8.4 / TC-08-04 Submit with blank email. / 68
Table 4 / Testing Schedule / 70

1. Introduction

1.1 Purpose of the TPC

The purpose of the Test Plan and Cases (TPC) document is to describe in detail the various approaches used to test the project’s main functionalities during both rainy and sunny day scenarios along with the acceptance criteria for the same. It also lists the schedule of the tests conducted and the resources used for conducting the tests.

The team is currently is the final stage of testing, integration testing and making sure all rainy day scenarios work as expected.

1.2 Scope

The scope of testing for this project includes unit and integration testing (both manual and automated) so as to ensure that each of the game’s functionalities performs as expected. The security concerns of the client is also addressed and tested thoroughly to ensure everything is secure and functional.

1.3 Focus

The main focus of the test cases is on how the project works on different devices and browsers. All possible user interaction with the game UI is tested thoroughly and the results are logged on Jira to keep track of all the discovered bugs and to assign them to different team members to fix within a certain deadline.

1.4 Type of Testing

Given below are the types of testing done for this project:

1.  Unit Testing

2.  Integration Testing

3.  Acceptance Testing

2. Test Strategy and Preparation

2.1 Hardware preparation
Hardware / Description
Server / Two AWS Amazon EC2 instances are required to be used as hosting servers for frontend and backend. One instance should have apache environment and the other one needs to have tomcat + mysql environment.
Devices / Different devices (phones, tablets, laptops) installed with different browsers.

Table 1 : Hardware Preparation

2.2 Software preparation
Software / Description
Browser with html5 support / The system is tested on different devices like laptops, mobiles, tablets manually.

Table 2 : Software Preparation

2.3 Other pre-test preparations

None

2.4 Requirements Traceability
Requirement ID / Verification Type / Test Case ID (if applicable)
WC_3914 / Testing / TC-01-01
WC_4284 / Testing / TC-01-02
WC_4285 / Testing / TC-01-03
TC-01-04
TC-01-05
WC_3923 / Testing / TC-02-01
TC-02-02
TC-02-03
TC-02-04
TC-02-05
WC_4294 / Testing / TC-03-01
TC-03-02
TC-03-03
TC-03-04
TC-03-05
WC_3915 / Testing / TC-04-01
TC-04-02
TC-04-03
TC-04-04
WC_3956 / Testing / TC-04-05
TC-04-06
WC_3912, WC_3915 / Testing / TC-05-01
TC-05-02
TC-05-03
TC-05-04
TC-05-05
WC_3937, WC_3913 / Testing / TC-06-01
TC-06-03
TC-06-04
TC-06-05
WC_3916 / Testing / TC-06-02
WC_3952 / Testing / TC-07-01
TC-07-02
TC-07-03
TC-07-04
TC-07-05
WC_4250 / Testing / TC-08-01
TC-08-02
TC-08-03
TC-08-04

Table 3: Requirements Traceability

3. Test Identification

3.1 Bomb placement on grid for game play

TC-01 Bomb placement on grid for game play

3.1.1 Test Level

Software Item Level

3.1.2 Test Class

Erroneous test, Capability test.

3.1.3 Test Completion Criteria

-  The user is able to place one bomb per tile.

-  The user is able to remove an already placed bomb.

-  The user can place no more than 4 bombs in total on the 4*4 game board.

-  The user is not able to place more than 4 bombs anywhere else on the game screen.

-  The user can press detonate button only after placing all 4 bombs.

3.1.4 Test Cases

This test case has 5 sub test cases:

-TC-01-01 Check clicking on any empty tile places a bomb.

-TC-01-02 Check clicking on a tile with bomb removes the bomb.

-TC-01-03 Check maximum of 4 bombs can be placed on game board tile..

-TC-01-04 Check clicking on any area outside the 4*4 tile doesn’t place any bombs.

-TC-01-05 Check detonate button disabled until all 4 bombs are placed.

Table 3.1.1: TC-01-01 Check clicking on any empty tile places a bomb

Description: From equivalence partitioning technique, I am testing boundary values for this groups/classes. It is important to test it because it is a mandatory win-condition that is crucial for the success of the game play for the user.

Test Case Number / TC-01-01 Check clicking on any empty tile places a bomb.
Test Item / Placing a bomb on any empty tile is tested by clicking on an empty tile that places the bomb on the corresponding tile.
Test Priority / M- Must Have
Pre-conditions / 1.  Game screen with 4*4 tile
2.  Bombs to place on the tile.
Post-conditions / Bomb is correctly placed on the desired tile.
Input Specifications / Click on a tile which is empty.
Expected Output Specifications / Bomb appears onto the clicked tile.
Pass/Fail Criteria / Pass Criteria:
Only 1 bomb is placed on the desired empty tile by clicking on the tile.
Fail Criteria:
Other than pass criteria.
Assumptions and Constraints / Tile is empty and doesn’t have a bomb already on it.
Dependencies / N/A
Traceability / WC_3914: As a user, I can place bombs anywhere on the given 4*4 grid.
Result / Pass

Table 3.1.2: TC-01-02 Check clicking on a tile with bomb removes the bomb

Description: From equivalence partitioning technique, I am testing boundary values for this groups/classes. It is important to test it because it is a mandatory win-condition that is crucial for the success of the game play for the user.

Test Case Number / TC-01-02 Clicking on tile with bomb removes the bomb.
Test Item / Removal of already placed bomb is tested by clicking on the tile which already has a bomb which removed the bomb.
Test Priority / M - Must Have
Pre-conditions / 1.  Game screen with 4*4 tile
2.  Bomb already placed on the tile.
3.  “Bombs left” column is present and shows the number of bombs left to be placed on the tile.
Post-conditions / Bomb is correctly removed from the desired tile.
Input Specifications / Click on a tile which already has a bomb.
Expected Output Specifications / Bomb disappears from the clicked tile.
Tile becomes empty.
Bomb removed appears on the “bombs left” column on the game screen.
Pass/Fail Criteria / Pass Criteria:
Bomb is removed from the tile.
Removed bomb appears on the “bombs left” column.
Fail Criteria:
Other than pass criteria.
Assumptions and Constraints / A bomb is already placed on the tile to remove it from the tile.
Dependencies / TC-01-01
Traceability / WC_3914: As a user, I can remove bombs anywhere from the given 4*4 grid.
Result / Pass

Table 3.1.3: TC-01-03 Check maximum of 4 bombs can be placed on game board tile.

Description: From equivalence partitioning technique, I am testing boundary values for this groups/classes. It is important to test it because It is a mandatory win- condition that is crucial for the success of the game play for the user.

Test Case Number / TC-01-03 Maximum of 4 bombs can be placed on game board tile.
Test Item / Maximum of only 4 bombs can be placed is tested by clicking on new tile to try to place another bomb.
Test Priority / M (Must have)
Pre-conditions / 1.  Game screen with 4*4 tile
2.  Bombs to place on tile.
Post-conditions / Game Board has only maximum of 4 bombs.
Input Specifications / Click on 4 different tiles on the given grid to place 4 bombs.
Click anywhere on the game screen page.
Expected Output Specifications / No more than 4 bombs can be seen on the game board tile or anywhere on the game screen.
Pass/Fail Criteria / Pass Criteria:
Only 4 bombs can be placed in total on the game board tile.
Clicking on an empty tile after 4 bombs are placed does not place any new bombs.
Fail Criteria:
Other than pass criteria.
Assumptions and Constraints / Bombs are available for placing on the tile.
Dependencies / N/A
Traceability / WC_4285: As a user, I should be able to place no more than 4 bombs anywhere on the given 4*4 grid.
Result / Pass

Table 3.1.4: TC-01-04 Check clicking on any area outside the 4*4 tile doesn’t place any bombs.

Description: From equivalence partitioning technique, I am testing boundary values for this groups/classes. It is important to test it because It is a mandatory qin- condition that is crucial for the success of the game play for the user.

Test Case Number / TC-01-04 Check clicking on any area outside the 4*4 tile doesn’t place any bombs.
Test Item / Clicking on any area outside the given 4*4 tile doesn’t place more bombs is tested by clicking on a random area outside the grid to try to place another bomb.
Test Priority / M (Must have)
Pre-conditions / 1.  Game screen page.
2.  Bombs to place.
Post-conditions / Game Board shows no other bombs outside the given 4*4 tile.
Input Specifications / Click on any area outside the grid on the game screen page.
Expected Output Specifications / No more than 4 bombs can be seen on the game board tile or anywhere on the game screen.
Pass/Fail Criteria / Pass Criteria:
No bomb appears on clicking on any random area outside the given 4*4 tile.
Only 4 bombs are placed in total within the 4*4 game board tile.
Clicking on an empty tile after 4 bombs are placed does not place any bombs.
Fail Criteria:
Other than pass criteria.
Assumptions and Constraints / Bombs may or may not be available.
Dependencies / N/A
Traceability / WC_4285: As a user, I should be able to place no more than 4 bombs anywhere on the given 4*4 grid.
Result / Pass

Table 3.1.5: TC-01-05 Check detonate button disabled until all 4 bombs are placed.