Directions

Tester Name ___________________       JAR # tested _____

Browse to www.csc.calpoly.edu/~graderjd/JARs. Download the JAR file named with your assigned number. Perform the testing steps below. Write down any discrepancies on this paper or a separate page. Submit to the instructor at the end of the hour.

Minesweeper Test Plan


Verify that the GUI looks like the image in the requirements.

At the start of the game the grid is completely filled with hidden squares. 

When you click on a square which doesn't have a bomb, numbers in squares next to unrevealed squares will indicate how many bombs are adjacent to it. For example, if an empty square has a 2 in it, there are 2 bombs adjacent to it.

When you click on an empty square that has no bombs next to it, it recursively reveals all the other adjacent empty cells, until it gets to one that is numbered.

If you click on a square containing a bomb, you lose, and all the squares are all revealed showing images of exploded and unexploded bombs as depicted in the requirements.  Verify that there are 13 bombs.  Verify that the bomb that was clicked on is shown as exploded.

A right mouse button click will toggle a "flag" image on and off to allow the player to mark squares that are suspected bombs. Move counter should NOT increase when a cell is flagged.

You don't win for flagging all the bombs. You only win when you clear all the unflagged cells.

When the board is revealed (either by winning or losing), leave flags visible so you can see if you flagged a bomb or not.

If the player wins the game a popup dialog should show the elapsed time and allow the player to enter their name. Note: the dialog should appear AFTER revealing the board.

The status panel displays the number of moves made, score, and time elapsed in minutes and seconds. (They may be labeled differently).  

Score is actually the number of bombs minus the number of flagged squares. At the beginning of a game it is just the number of bombs.

Verify the score decrements as you mark squares.
Verify the score increments as you unmark squares.
Verify the score becomes negative if you mark more squares than there are bombs.

Start the app several times and verify the game begins with a different randomly selected board each time.

The Restart button begins the same game over again.

Press Alt-A to show a popup dialog with the software version number and the current game number as depicted in requirements.

The Alt-A and Alt-C functions should operate without having to click any cells in the table. (The correct implementation uses a button mnemonic, not a keylistener).

Start a new game and press Alt-A to show a popup dialog with the software version number and the current game number as depicted in requirements.
Click New Game and press Alt-A again.  The game number should be incremented by one.

Verify that Select Game lets you select a game by number.  Press Alt-A to verify that the app actually changed to the specified game number.

Scores button opens a dialog showing all the saved winning times as depicted in requirements, ordered from fastest to slowest.  

Locate the high scores data file on the filesystem and modify it with a text editor to add a new entry.
Start the app again and verify the scores button displays your added entry.

Start a new game and press Alt-C should puts an indicator mark such as a star on the cells containing bombs. This should NOT cause you to win the game.