Testing
This page summarizes local integration testing and pre-release check paths. The overall order remains feature-first: confirm the target feature, then use the corresponding engine Quick Start, debugging notes, and feature-specific validation.
Before testing
Section titled “Before testing”- IGP desktop client is installed locally and can start.
- The correct
appIdhas been obtained. - The game startup flow initializes the SDK as documented.
- Achievements, game authorization, real-name verification and anti-addiction, and other required capabilities have been configured in the backend. Real-name verification and anti-addiction has either launch blocking or in-game real-name verification selected.
- For rooms, realtime messaging, state, and RPC, launch the game through the IGP desktop client instead of only double-clicking the executable.
Recommended order:
- Install the main package with Unity installation.
- Complete Unity Quick Start.
- In Editor, follow Unity debugging to handle launch parameters and desktop client integration.
- Open the target feature page and run feature-specific self-tests.
Minimum validation:
- For single-player or non-room integrations, authorization or achievement call results are visible.
- For room integrations, room entry is visible, ready can be set, and one realtime message can be sent.
- If real-name verification and anti-addiction is needed, the selected handling mode can be validated.
GameMaker
Section titled “GameMaker”Recommended order:
- Download and extract the GameMaker release package.
- Open the sample project:
windows-auth-achievements. - Complete initialization, authorization, and achievement validation with GameMaker Quick Start.
- For troubleshooting, read GameMaker debugging.
Minimum validation:
igp_init(...)returns success.- Connection state moves from
disconnectedto a clear state. - Authorization state moves from
pendingto a clear result. - After triggering an achievement, the event queue shows a result.
- After refreshing real-name verification and anti-addiction state, the current state can be read.
- If launch blocking is used, users who do not meet the requirements do not enter the main game flow.
Godot is currently an in-development preview and is recommended for evaluation testing only.
Recommended order:
- Register
IGPGodotAutoload. - Verify the startup scene can obtain
/root/IGP. - Call
BootstrapFromCommandLineAsync(). - Verify
RoomSnapshotReceivedor an error signal. - Then test ready, messaging, state, RPC, and achievements.
Minimum validation:
- The startup scene can obtain autoload.
- After bootstrap succeeds, a room multiplayer connection can be established.
- At least one room snapshot is received.
Check by feature
Section titled “Check by feature”| Feature | Check entry |
|---|---|
| Startup and connection | Startup and connection |
| Game authorization | Game authorization |
| Real-name verification and anti-addiction | Real-name verification and anti-addiction |
| Achievements | Achievements |
| Multiplayer lobby | Multiplayer lobby |
| Rooms | Rooms |
| Realtime messaging | Realtime messaging |
| State and RPC | State and RPC |
| Mirror transport | Mirror transport |
Pre-release checks
Section titled “Pre-release checks”- The
appIdused in documentation examples has been replaced with the production gameappId. - Example keys have been replaced with achievement keys configured in the backend.
- Debug launch parameters, test files, and temporary configuration are not included in the production package.
- Multiple runtime instances are not placed in production scenes.
- Failure, disconnection, authorization failure, and real-name verification and anti-addiction restriction states all have in-game handling.
- The SDK initialization call site is clear, and the real-name verification and anti-addiction handling mode matches the in-game flow.