Test Plan for Tutorial - UQcsse3200/2024-studio-3 GitHub Wiki

Test Environment

Framework: JUnit 5

Dependencies:

GdxGame: The main class under test.

ServiceLocator: Manages the services used in the game.

Mocked components like RenderService to simulate their behavior.

Mock and statically mock input handling to simulate user input.

Test Cases

1.Advance the Tutorial Steps with Inputs

Purpose: check whether it moves to next tutorial step with right input

Setup: start the TutorialScreenDisplay and call advanceTutorialStep()

Expected Outcome: The tutorial step advances on right input .

2.Advance Tutorial Step with Invalid Input

Purpose: Check that the next tutorial step should not be displayed with wrong input .

Setup: fix the tutorial step to a specific input only and call advanceTutorialStep().

Expected Outcome: The tutorial step doesnt change .

3.End Tutorial with Enter Key

Purpose: Verify after pressing enter the main game starts

Setup: Set the tutorial step to the final step and simulate the enter key press.

Expected Outcome: The current screen redirects to MAIN_GAME.

4.Dispose Tutorial Resources

Purpose: Verify that the resources are disposed afterwards .

Setup: Call dispose()

Expected Outcome: Resources related to the tutorial are released, and flags are reset.#