Skip to content

Main Menu Display Tests

Jay Thakkar edited this page Aug 28, 2024 · 11 revisions

MainMenuDisplay testing documentation

Logger messages have been strategically integrated into the Main Menu, Help Menu, and Settings Menu to facilitate effective testing and debugging. These log messages provide detailed tracking of user interactions, helping to ensure that each feature functions as intended. The following testing procedures will be followed:

Main Menu Buttons:

Start Button:

Verify that the Start button correctly initiates the game. Logger Example: logger.info("Start button clicked") should be triggered when the Start button is pressed.

  • Output (In logger terminal): Start button clicked

Load Button:

Ensure the Load button correctly loads the saved game. Logger Example: logger.info("Load button clicked") should be logged when the Load button is activated.

  • Output (In logger terminal): Load button clicked

Minigames Button:

Check that the Minigames button provides access to the minigames. Logger Example: logger.info("Minigames button clicked") should confirm that the Minigames option was selected.

  • Output (In logger terminal): Minigames button clicked

Settings Button:

Confirm that the Settings button opens the Settings Menu. Logger Example: logger.info("Settings button clicked") should appear when the Settings button is used.

  • Output (In logger terminal): Settings button clicked

Help Button:

Ensure the Help button opens the Help Menu and that the slides navigate correctly. Logger Example: logger.info("Help button clicked") should be triggered upon opening the Help Menu, with additional logs for slide transitions such as logger.info("Slide changed to: " + (currentSlide[0] + 1)). Once the help window is opened, the confirmation message should appear, reading Help window opened, displaying Movement slide If the navigation is achieved via LEFT/RIGHT arrow keys, the logger message displayed should be Slide changed to: " + (currentSlide[0] + 1) + " (via LEFT/RIGHT key) depending on the key pressed.

  • Output (In logger terminal): Slide changed to: [1, 2, ..., 6] [(via RIGHT/LEFT key)] (depending on change method)

Exit Button:

Verify that the Exit button triggers the exit confirmation dialog and exits the game when confirmed. Logger Example: logger.info("Exit confirmed, closing game") should be logged if the user confirms exiting, while logger.info("Exit canceled") should appear if the user cancels.

  • Output (In logger terminal):

Hover/Elevation effect for buttons:

line 452 (MainMenuDisplay) -> logger.info("Hover feature activated"); This line is commented out since if a user is on the edge of the button, the hover effect is triggered, which repeatedly sends triggers the logger to send a message, thus crowding the feed. However, the hover feature check is done through uncommenting that line.

  • Output (In logger terminal):

These Logger messages have been added to track key user interactions, such as button clicks, menu openings, and navigation between slides or settings. These logs will be invaluable during testing to ensure that all features of the Main Menu are functioning correctly and provide clear feedback during debugging.

Flowchart

The following flowchart outlines the expected output on the logger terminal (as shown in nodes coloured GREEN). The flowchart displays expected usage and possible choices for testing along with expected output and functionality.

flowchart-fun (1)

Testing and Quality Assurance

Due to time constraints, testing for the Help Menu functionality has not been completed in Sprint 1. However, the following procedures will be followed in subsequent sprints to ensure the feature's reliability:

1. Functionality Testing:

  • Verify that the Help button opens the Help window.
  • Ensure that each slide displays correctly and transitions properly using Next and Previous buttons.
  • Confirm that the Exit button returns the user to the main menu.

2. Usability Testing:

  • Check that the Help window provides clear and understandable instructions.
  • Test for user-friendly navigation and accessibility of information.

3. Performance Testing:

  • Ensure that the Help window loads efficiently and operates smoothly without lag.

Future Enhancements

In future sprints, we will focus on:

  • Conducting thorough functional and usability testing.
  • Collecting user feedback to refine and improve the Help content.
  • Addressing any issues identified during testing to enhance overall user experience.
Clone this wiki locally