Learn about Game Testing

Tram Ho

I – Game application development lifecycle

  1. Pre-Production: This is Game conceptualization, storyboarding (storyboard – a series of drawings, scripts, lines …), defining features, requirement analysis, documenting. This phase includes technical design documentation and feature specifications, game architecture, frame overlay, and animation. The following items are of interest:
  • Music, Camera (zoom in and out, playback, see cinema style), player properties and actions.
  • Flow of Game logic, rules of play and conditions to reach the next level.
  • Object and event triggers, player scores, movement and position, player stats, non-interactive sequences, special effects, title screens, multi-button actions.
  • Gamepad, movie clip, shock / vibration effects, legal text, use function buttons, use analog and digital modes.
  1. Finished product stage (Production):
  • In this stage, coding is done. Include: coding, integration of different modules.
  1. Testing and Deployment:
  • In this phase Functional testing, Regression testing, Alpha, Beta, Gold testing are performed. Coverage and flow testing, data integrity, algorithm-specific testing, path testing, incremental testing are also performed.

II – How is Game Test different from Testing other software?

  • Game Testing is an iterative process, each new build can contain bugs, so it needs to be thoroughly tested.
  • All game testing follows a basic structure regardless of the size of the game and the time it takes to produce the game.
  • The QA needs to study the game rules and requirements. Understand the overall architecture of the game component, file architecture, stream, file structure, and game-related dependencies. With each new game prototype, it is important to regularly review the test documentation to update any changes in specifications, new test cases and new configuration support. The tester must make sure that no new problems arise.
  • Categorize requirements based on the intended purpose and the target audience.
  • Define user and system requirements, should be classified into requirements: functional, non-functional, domain.
  • Identifies testable items, non-testable items, objectives and measures for functional and non-functional requirements.
  • Check if the functional requirements are complete, consistent and easy to understand.
  • Identify custom, conflicting requests.
  • Identify interdependent requirements.
  • Prioritize requirements based on uniqueness, complexity, and severity.
  • Define the theme of the game, characters, animation, AI, motion pictures, camera view, gameplay …

III – Types of Game Testing

  1. Function test:
  • Function tester looks for general problems in the game or its UI and graphics, such as problems with: game logic, game operation, stability and integrity issues game content. UI testing ensures user friendliness.
  • Examples: Check colors and background images, menu structure, screen orientation and screen resolution, font size, link errors, usability, system navigation such as: load time, time timeout and display, sort, confirmation messages, sequences, animations and audio elements, instructions and dialogue messages. User Interaction, User Interface, Transaction Verification, Camera Calibration & Accuracy Test, Screen Resolution, Mobile Design Responsibility Check, Quality Check sound …
  1. Compatibility Check:
  • Check if the game is compatible on different devices and compatibility on different hardware and software configurations.
  • Example: Install and Uninstall games on all supported consoles (consoles) / computers / mobile phones.
  1. Performance testing:
  • Check out the overall performance of the game. Perform performance adjustments to optimize the game speed.
  • Important parameters are checked during performance testing:
  • Response time on client and server, transaction completion time, maximum load performance, longevity, network coverage, memory leak, running in low memory conditions , running in low battery condition, execution time to download application, multiple users simultaneously accessing the application’s server, testing speed, throughput, reliability, scalability, etc. .
  • Battery consumption and graphics performance:
  • Measure the game’s battery consumption on mobile devices. Battery consumption should be optimal over the long term and game response should be satisfactory under different heavy loads on different devices.
  • Processor and memory constraints:
  • The performance counters are used to measure the CPU and memory consumption of an application.
  • Network connections :
  • Measure response time of mobile games on different types of networks (Wi-Fi, 2G, 3G, 4G), to provide general information about game performance on unreliable networks . It also tests connectivity between mobile devices, data centers or the cloud. Full peak times, intense connections, data replication, packet loss, data fragmentation are monitored. Testing game performance especially MMO
  1. Compliance testing:
  • Comply with market rules (e.g. Apple App Store policies …), comply with corporate policies (for example, prohibited content …). Compliance may also involve regulatory agencies such as PEGI and ESRB. If there is objectionable content that does not comply with the criteria, they will be reported. Even a single minor violation of the license approval submission can result in the game being rejected, causing time consuming and incurring additional costs in checking and resubmit …
  • For example: If you want to publish the game in European countries, you have to test according to PAL standard. If you want to publish game in North America, you must test according to NTSC standard.
  1. Test Localization:
  • Localization testing is important if the game is targeted to the global market. Game title, content and text should be translated and tested with devices in multiple languages. These types of tests can be done quickly (with the help of cloud-based device accessors and automated tests).
  • For example: Localization, in addition to common languages, needs to be specific to MENA (Middle East / North Africa), Arabic localization (Right-to-left text support, Display two direction), 2-byte characters (for East Asian languages), date / time of each region, currency unit, address format and other local requirements …
  1. Soak testing
  • This test involves leaving a game running for a long time in different modes of activity. For example, set a pause for the game (pause) or stop at the title screen … Soak testing can identify memory leaks or surrounding errors.
  • Example: The game has started and the character is put on standby for 24 hours. This technique is used to detect problems caused by memory leaks and other errors in the game.
  1. Recovery test
  • In software, recovery testing is used to check how resilient an application is from crashes, hardware failures, and other similar errors. In this type of testing, the application must fail, and then observe how the application recovers in the above failure and environmental conditions.
  • Example: While the game application is running, suddenly restart the game console and check the validity of the data …
  1. Security testing
  • This is done to check how secure the software is when it comes to operating against external threats. Protects data from external threats, uncontrolled system access restrictions, data breaches, vulnerable operating systems, communication systems fl aws (vulnerable) and weak encryption.
  • Example: Changing the URL from / login to / play where entering the URL on the website is not allowed to access the game directly (without logging in).
  1. Other tests
  • Check out whether the characters are real or virtual. In multiplayer games, server connectivity and state synchronization are two important areas that need to be tested. Example: A 3D racing game with many people playing.
  • Test new features like game status updates, friend invitations, premium gift sharing, etc. This ensures a rich gaming experience for users. For example: Games on Facebook, Blog …
  • Sound Testing: Check to see if there are errors while downloading files, identify files with errors or distortions, CC file to analyze error comments.
  • Database and game statistics Verify the database using a debugger to investigate whether the game is using the correct data. Make sure that the loaded data is in the right place and that the correct information is displayed.
  • White-box testing
  • White box testing for Game focuses on the architectural, integration, and system aspects of mobile games.
  • Code Check: Checks the source code, analyzes common program logic and programming errors, checks compliance with coding standards.
  • Focus Testing: The code is loaded into individual modules and analyzed the output.
  • Data Analysis: Analysis and validation: data used, interpretations (notes) and manipulation for different modules.
  • Check the path (path) and flow (flow): Perform the correct sequence of objects.
  • Test specific algorithm: Test a specific game scenario or feature by setting data variables, data values, and executing code in the specific environment (local …).
  • Artificial intelligence analysis: Statistics of programmable movements and plays of generated AI component. The result is validated to check if all programmable movements are used. For example, a clip on top of a snowboard and a play (combined punch / kick in multi-dimensional action) is used.
  • Assistive gaming using adaptive technology
  • Assistive Gaming is also known as an accessibility game. The features are designed using adaptive technology for players with various disabilities such as poor vision, blurred vision, blindness, color indistinguishability, speech, hearing, perception, motion muscle and motor impairment.
  • For example, Cardinal Direction (CD), Tower of London (TOL) are two popular games that have been modified to suit visually impaired users. In these games, the visual stimulus is replaced by the audio input …
  • Notes while testing such a game:
  • The colors will blink in a pattern and tones will play for each color.
  • Each color must be accompanied by a sound.
  • Image data needs to be described in words so that the visually impaired will not have any problems receiving information through the use of a screen reader.
  • Players will hear in-game sounds in three dimensions and have to navigate words using 3D sound and spatial sound when touching the screen.
  • Game metrics that a tester should know
  • DAU / MAU (Daily active users / monthly active users): The ratio of the number of active users per day compared with the number of monthly active users.
  • Session: Each time any user opens the application, it counts as a session. Here, the focus is on average sessions per DAU (average number of sessions per day).
  • Download rating: The rating of a specific App Store game (iOS, Android Play) by monthly game downloads.
  • Maintenance: Stats are very important in free games. To calculate retention (users), separate users into pure groups based on the date the app was downloaded.
  • Performance Index: To monitor the performance of the online game or game continuously. The frame rate the game executes on the client’s hardware platform or in the game’s server, performance and stability metrics can be used to monitor changing features and alternate updates change this.
  • Key risks in Game Testing:
  • The game does not create an engaging experience for the intended audience.
  • The game doesn’t have a player-focused design.
  • Interesting elements and addictive gameplay are missing from the game.
  • The game is not unique, competitive, fast-paced.
  • The game fails due to technical issues, broken features, fatal errors, bad music, and poor video.
  • Game development costs exceed budget
  • The game should have an aesthetic design and simple gameplay.

Epilogue

Translation from source: https://www.guru99.com/game-testing-mobile-desktop-apps.html

Share the news now

Source : Viblo