Regression Test Properties

STG Construction

GameRTS takes inputs including a given set of test cases and two or more versions of the game. Each test case is a sequence of concrete actions a player will take to navigate through the games in GUI. We construct a State Transition Graph (STG) and use states and transitions to represent dynamic behaviors of the game. Typically, the number of actions and states can be very large when running a game, so the STG constructed the abstracted states and transitions to model the game. 

You can find the constructed STGs at here: Download Data

Test Dependency Analysis

We perform the test dependency analysis based on STG and link the states and transitions in STG to the corresponding game software files (i.e., the code, the resource and the flowchart). When designing STG, we make sure that our abstraction leads to the small size of states and transitions, so we only need to calculate a small number of dependencies. GameRTS computes test dependency at different granularities for different types of files. For source code, we perform the method-level analysis; while for design file(i.e., flowcharts), we map each state and the transition of the STG to the nodes and edges in the flowchart; and for the art resources, we perform file-level test dependency analysis. 

You can find the labeled states/actions at here:  Download Data

Changed File Type Representative

Labeled Nodes with Different Types of Changes (Version 0)


Click image to view full trace file

Labeled Nodes with Different Types of Changes (Version 1)


Click image to view full trace file

Other Evaluation Results

Results of RTS with different test dependencies from version 0 to version 1

Results of RTS with different test dependencies from version 1 to version 2

The original test trace data could be found here:  Download Data