Objective
To simulates the game actions and server events, to test the core code and server stability.
What is the Test Tool (Test Client)
Test Client is a WPF application intended to help with testing by creating fake clients that can connect to the servers and issue commands.
How to get it
You can grab the latest version from: http://build.forgottenmines.com:8080/job/Ballistic/lastSuccessfulBuild/artifact/Ballistic/Tools/TestClient/bin/Release/TestClient.zip
Otherwise, you can build it from the TestClient folder (or ask a dev to build it for you).
How to use it
this is the main window of the test tool that has most of the functionalities.
In Test Client, you have 3 Authentication types:
-
Debug
The default way used when you opened the test client application.
-
FaceBook
if you need to use FaceBook Authentication click on this button, that will make another window will appear to take your credentials then click login.
after that, if the Login success you will find your name Like in your Facebook account in the Clients List
-
WordPress
In this way, you will use your War To the Core credential’s website
Like you see in this Image this part from Test Client has 3 main parts:
- Action List: this list has all actions implemented till now in the game if you select any one the controls will appear in part 2.
- Input Data Action: this part like panel contains all controls related to the action selected where each row represents the property in action selected. Note: there are actions don’t have controls, that means this action doesn’t have the wrapper class because the properties mentioned related to properties of wrappers classes related to this action.
- Execute Action: this button used to execute your action after filling the controls by data (if have).
Like you see in this Image this part from Test Client has 3 main parts:
- Action Name: this is the action has been executed and beside it the executed time (UTC).
- Requests Log: this represents the Request properties have been sent to the server and filled in the input data action panel.
- Responses Log: this represents the data have been sent by the server.
the executed requests have 3 probabilities when have been sent to the server
1- Success: by Green color.
2- Fail: by Red color.
3- No Response from the server: by Yellow color.
There is another type of logs is Warning and Errors Log.
where these logs represent the errors happened in the test tools or warnings that tell us there is something not ordinary, and we should focus on it. maybe some of these logs expected.
Note: you can copy the data from the requests/ responses log to the clipboard.
if you make double click on any item of the errors/warnings log, a popup will appear by all details of this error/warning.
For the events come from the server the tool has 2 ways to treat with them:
- Normal way: where the tool just receives the events come from the server and display their details in Requests/Responses Log when you make the Show Event check box checked.
- Custom way: where we taught the server to execute a specific action when the specific event fire from it.
How to do that:
Firstly, execute the action that you want to be will execute when the specific event fire.Secondly, choose from events list the wanted event that will be registered with the previous action executed.
Thirdly, save this case by clicking on Save Action button.
when the specified event fired by the server, the specified action will be executed automatically by saved data.
The objective of Test Scenario:
Test scenario is executing some of the actions by specific order then save them (data that filled the input data panel for each action) in external file (JSON, Text) to reuse them in later time for many reasons, for example report someone by a bug when you do some actions , reuse them to test server and put it under pressure and figure out problems appeared in the game couldn’t discover it by the code or unit test.
Like in the Image, test scenario has two parts, first one for executing one scenario by one client one time or multiple times.
second part executing multiple of scenarios by one or multiple clients and one time or multiple times.
One Scenario:
- select some of the actions that you want to use them
- click on Create Scenario button and save the file
- to load it click on Load Scenario Button and fill the wanted data.
- click on Play Scenario Button to play it
- click on the pause button to stop the executing temporary.
Multiple Of Scenarios:
- by clicking on Load Multi-Scenario button you will load the required scenarios to play them.
- then file the controls of each scenario by needed data like that
- after that click on the Execute All button to execute them, the new clients created you will found them in client list when select any one its requests/ responses appear in the log.
- Calculate Average Latency: where this label display total time (Millisecond) that server take them to make all requests for specific client.
- Friend List: display all players on the server except the client running the tool.
- Active Battles Ids: display all battles actives on the server.
- Status of selected client: where display the connected status, active battle joined on it and the alliance too.
- Total number of players connected on the server:
Recent Comments