Research Article

Behaviour Preservation across Code Versions in Erlang

Listing 10

SecEr reports discrepancies in the multiple-POI execution.
$  ./secer -pois "test_string:relError()" -funs "test_string:funs()" -to 15
Function: tokens/2
----------------------------
Generated test cases: 64458
Mismatching test cases: 31187 (48.38%)
POIs comparison:
+ ’string0.erl’,6,call,1,
’string1.erl’,14,call,1
The second trace is longer => 40 Errors
Example call: tokens([11,6,4,4],[4])
+ ’string0.erl’,6,call,1,
’string1.erl’,14,call,1
The first trace is empty => 364 Errors
Example call: tokens([47,3,19,7,1,10,1,25,4,16],[16])
+ ’string0.erl’,6,call,1,
’string1.erl’,28,call,1
Unexpected trace value => 18078 Errors
Example call: tokens([4,24,0,4,13,10,1,0],[2,8,12,1,0])
+ ’string0.erl’,6,call,1,
’string1.erl’,28,call,1
The first trace is empty => 7991 Errors
Example call: tokens([13,7],[1,1,2,3,6,4,11,8,7])
+ ’string0.erl’,6,call,1,
’string1.erl’,28,call,1,
’string1.erl’,14,call,1
The first trace is longer => 3058 Errors
Example call: tokens([6,3,1,7,4,9,5,7,28],[1,10,46,3,4,8,34,6])
+ ’string0.erl’,6,call,1,
’string1.erl’,28,call,1,
’string1.erl’,14,call,1
The second trace is empty => 8231 Errors
Example call: tokens([12,1],[2,10,0,4,12,4,6,2,22])