Experiments
- Download experiment to do experiments.
- The four directories
random
,skillexplorer
,user
,vitas
show the communication logs obtained by random testing, Skillexplorer, manually testing and Vitas respectively. experiment.py
contains the scripts to get figure 5 to figure 9 in paper.- Excel files save the raw data of figure 5 to figure 9 in paper.
Figure 5
Figure 5 shows the comparison of state coverage with random testing. Skills that can be opened normally and have consistent behavior are selected in fig5_coverage_Vitas_vs_random.xlsx
. To get the state coverage achieved by Vitas and random testing, run:
python experiment.py 5
The result will be shown in fig5_coverage_Vitas_vs_random.xlsx
.
Figure 6
Figure 6 shows the comparison of state coverage with Skillexplorer. Skills that can be opened normally and have consistent behavior are selected in fig6_coverage_Vitas_vs_Skillexplorer.xlsx
. To get the state coverage achieved by Vitas and Skillexplorer, run:
python experiment.py 6
The result will be shown in fig6_coverage_Vitas_vs_Skillexplorer.xlsx
.
Figure 7
Figure 7 shows the average state coverage achieved by manually testing, Vitas, random testing, and Skillexplorer. Skills that can be opened normally and have consistent behavior are selected in fig7_coverage_rate_four.xlsx
. To get the state coverage achieved by these four techniques and the union of them, run:
python experiment.py 7
The result will be shown in fig7_coverage_rate_four.xlsx
. It is also shown here.
Figure 8
Figure 8 shows the number of interaction rounds required to achieve a certain percentage of the state-space between Vitas and context-enhanced random testing. We only select those skills whose final sizes of state-space obtained by two techniques are within -10%-10% in the comparison, can be opened normally and have consistent behavior. They are shown in fig8_coverage_round_Vitas_vs_random.xlsx
. To get the interaction rounds, run:
python experiment.py 8
The result will be shown in fig8_coverage_round_Vitas_vs_random.xlsx
. Sheet 'Vitas' and sheet 'random' shows the interaction rounds required by Vitas and random testing respectively.
Figure 9
Figure 9 shows the number of interaction rounds required to achieve a certain percentage of the state-space between Vitas and Skillexplorer. We only select those skills whose final sizes of state-space obtained by two techniques are within -10%-10% in the comparison, can be opened normally and have consistent behavior. They are shown in fig9_coverage_round_Vitas_vs_Skillexplorer.xlsx
. To get the interaction rounds, run:
python experiment.py 9
The result will be shown in fig9_coverage_round_Vitas_vs_Skillexplorer.xlsx
. Sheet 'Vitas' and sheet 'Skillexplorer' shows the interaction rounds required by Vitas and Skillexplorer respectively.