System Tests
Project Name: | Klotski |
---|---|
Create by: | Mouhieddine Sabir, Gianluca Pianta, Alessandro Trigolo, Antonio Tangaro |
Test case name | Summary | Pre-Condition | Steps | Data | Post-Condition | Expected Result | Actual Result | Pass/Fail |
---|---|---|---|---|---|---|---|---|
Tutorial | The game displays the tutorial screen | The game has never been opened | 1. The user opens the game 2. The user goes through the tutorial with the “NEXT” button, goes to the previous explanation with the “BACK” button or skip the tutorial entirely with the “SKIP” button | The status of the tutorial: completed or not | The status of the tutorial is saved | The tutorial screen is presented to the player | As expected | Pass |
Game settings | The game displays the settings page | The main menu is displayed | 1. The user clicks the “SETTINGS” button 2. The user changes the music and/or the sound effects volume | None | The sliders value is set to the current music and sound effects volumt | The settings page is displayed | As expected | Pass |
Adjust music volume | The user can adjust the music volume | The settings page is displayed | 1. The user uses the music volume slider to adjust the music volume | The new value of the music volume | The value of the music volume variable changes | The music volume is changed | As expected | Pass |
Adjust sound effects volume | The user can adjust the sound effects volume | The settings page is displayed | 1. The user uses the music volume slider to adjust the sound effects volume | The new value of the sound effects volume | The value of the sound effects volume variable changes | The music sound effects is changed | As expected | Pass |
Select configuration | The user can select the preferred configuration | The main menu is displayed | 1. The user clicks the “CHOOSE CONFIGURATION” button 2. The user selects the preferred configuration 3. The game starts with the chosen configuration | The chosen configuration | The configuration is read in the internal file and loaded | The game starts with the chosen level | As expected | Pass |
New game | The user starts a new game | The main menu is displayed | 1. The user clicks the “NEW GAME” button 2. A randomly configuration is selected and the game starts | The randomly chosen configuration | A random configuration is read in the internal file and loaded | The game starts | As expected | Pass |
Load game | The user continue playing a game previously saved | The main menu is displayed | 1. The user clicks the “LOAD GAME” button 2. A list containing all the savings is displayed 3. The user chooses the saving in order to continue solving the puzzle | The saved game in the local file | The state of the game is read in the local file and loaded | The loaded game starts at the same point it has been saved | As expected | Pass |
Exit game | The user exits the game, shutting down the application | The main menu is displayed | 1. The user clicks the “EXIT GAME” button 2. The application shuts down | None | The game shuts down | The application shuts down | As expected | Pass |
Save game | The user, during a game, can decide to save the progess | The game is started | 1. The user clicks the “Save” button during a game 2. The user stes the name of the saving 3. The user clicks the “Save” button | The state of the game | The choesen state of the game is written in the local file and loaded | The state of the game is saved | As expected | Pass |
Moves counter | During a game, after taking an action, the moves counter updates | An action is taken by the user | 1. The moves counters updates | None | The counter variable is updated | The move counter increases/decrease by one or is reset to zero. | As expected | Pass |
Move blocks | The user, during a game, can move the blocks using mouse or keyboard | The game is started | 1. The user selects the block 2. The user uses the mouse to drag the block 3. The move counter increases by one | None | The block position is changed | The block is moved toward a direction | As expected | Pass |
Undo action | The user, during a game, can undo the action just taken | The game is started and the user did at least one move | 1. The user clicks the “Undo” button during a game 2. The action just taken is undone 3. The move counter decreases by one | The earlier state of the game | The earlier state of the game is extracted from the stack | The game is rewinded by one move | As expected | Pass |
Next Best Move | The user, during a game, can recive an hint and the game makes a move | The game is started | 1. The user clicks the “Next Move” button during a game 2. An algorithm decides which move is best and the game takes it 3. The move counter increases by one | The move calculated by the solving algorithm | The position of the block choosen by the algorithm changes | The game takes the best move in order to solve the puzzle | As expected | Pass |
Reset setup | The user, during a game, can reset the puzzle setup | The game is started | 1. The user clicks the “Reset” button during a game 2. The game configuration goes back from the beginngin 3. The move counter is reset to zero | The initial configuration | The state of the game resets | The game setup resets | As expected | Pass |