Title
EventFlowSlicer: Goal Based Test Case Generation Strategy for Graphical User Interfaces
Jonathan Saddler and Myra B. Cohen
Supplementary Data for our paper that appears in A-TEST 2016
Abstract

Automated test generation techniques for graphical user interfaces include model-based approaches that generate tests from a graph or state machine model of the interface, capture-replay methods that require the user to specify and demonstrate each test case individually, and modeling-language approaches that provide templates for abstract test cases. There has been little work, however, in automated goal-based testing, where the goal is a realistic user task, a function, or an abstract behavior. Recent work in human performance regression testing (HPRT) has shown that there is a need for generating multiple test cases that execute the same user task in different ways, however that work is limited in that it lacks efficient test generation techniques and only a single type of goal has been considered.

In this paper we expand the notion of goal based interface testing to generate tests for a variety of goals. We develop a direct test generation technique, EventFlowSlicer, that is more e cient than that used in human performance regres- sion testing, reducing run times by 92.5% on average for test suites between 9 to 26 steps and 63.1% across all test suites. Our evaluation shows that the number of tests generated is non-trivial – more than can be easily captured manually. On average EventFlowSlicer generated 38 test cases per suite, and as many as 200 test cases which all achieve the same goal for a specified task.


Experiment Settings

Setup

Below are EFG, GUI, and Rules files provided for different versions of the tasks. Note that we provide data in the rules column that specifies rules files for both the generators used during the study of 1) the EFS test case generator and 2) the HPRT test case generator. A zip file of each set of generated test cases is provided in a table following the input files table.

The set of applications used for our tasks consist of the following:

Input Files
App Task Instance GUIRules EFG Visualizations
LibreOffice Writer Format Text M GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
LibreOffice Writer Format Text MK GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
LibreOffice Writer Format Text MKT GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
LibreOffice Writer Insert Hyperlink M GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
LibreOffice Writer Insert Hyperlink MK GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
LibreOffice Writer Insert Hyperlink MKT GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
LibreOffice Calc Absolute Value M GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
LibreOffice Calc Absolute Value MK GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
LibreOffice Calc Absolute Value MKT GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
LibreOffice Impress Insert Table M GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
LibreOffice Impress Insert Table MK GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
LibreOffice Impress Insert Table MKT GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
TerpWord Bold Center   GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
DrJava Compile File   GUI File

EFS Rules File

EFG File EFG PNG
DrJava Search Options   GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
JEdit Comment Indent   GUI File

HPRT Rules File

EFS Rules File

EFG File EFG PNG
JEdit Commented Text TC GUI File

EFS Rules File

EFG File EFG PNG
JEdit Commented Text BC GUI File

EFS Rules File

EFG File EFG PNG
JEdit Commented Text FULL GUI File

EFS Rules File

EFG File EFG PNG
JEdit Four Paragraphs WD GUI File EFS Rules File EFG File EFG PNG
JEdit Four Paragraphs MD GUI File EFS Rules File EFG File EFG PNG
Test Cases and Output Statistics
App Task Instance Test Cases Average Test
Case Length
LibreOffice Writer Format Text M 3
zip
10
LibreOffice Writer Format Text MK 24
zip
8
LibreOffice Writer Format Text MKT 81
zip
7
LibreOffice Writer Insert Hyperlink M 2
zip
9
LibreOffice Writer Insert Hyperlink MK 8
zip
8
LibreOffice Writer Insert Hyperlink MKT 18
zip
7
LibreOffice Calc Absolute Value M 4
zip
10
LibreOffice Calc Absolute Value MK 32
zip
11
LibreOffice Calc Absolute Value MKT 72
zip
10
LibreOffice Impress Insert Table M 3
zip
8
LibreOffice Impress Insert Table MK 12
zip
7
LibreOffice Impress Insert Table MKT 36
zip
6
TerpWord Bold Center   8
zip
10
DrJava Compile File   4
zip
3
DrJava Search Options   64
zip
9
JEdit Comment Indent   16
zip
6
JEdit Commented Text TC 26
zip
9
JEdit Commented Text BC 26
zip
10
JEdit Commented Text FULL 200
zip
14
JEdit Four Paragraphs WD 114
zip
16
JEdit Four Paragraphs MD 36
zip
21
Acknowledgments

This research was supported in part by the National Science Foundation awards CCF-1161767 and CNS-1205472. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.