Topaz
joakim-brannstrom
released this
16 May 20:59
·
810 commits
to master
since this release
New features for dextool mutate
- Speedup execution of tests by only running those that are affected by the
mutant when running the slow source code modification engine. This is done
by saving the checksum of alltest_cmd
afterbuild_cmd
is executed and
no mutant is inserted. When a mutant is later on inserted the resulting
test_cmd
s are compared to the unmodified. Only those that are different
are classified as affected and thus need to be executed. If notest_cmd
is affected by the inserted mutant the mutation is classified as
equivalent. Settest_cmd_checksum
to true to activate the feature. It is
by default turned off. - Changed the default test order of mutants to
bySize
after a thorough
testing phase. It means that the mutants are tested in random order but
weighted by how much they affect the program (SUT). This mean that e.g.
large sdl mutants will be prioritized above aor mutants.
Fixes for dextool mutate
- The captured output from the test cases wasn't possible to limit which could
lead to a memory explosion and consequential crash of the tool because it
ran out of memory. This has now been fixed by introducing a configuration
option (max_test_cmd_output
) and default limit of 10 Mbyte. - Fix console spam when the plugin compile the software under test. The spam
is replaced by a timestamp that is printed once every minute to indicate to
a CI service that it is alive and to the user how long it has been
compiling. If the compilation fail it will automatically re-start but this
time print all output to the console for the user to understand what went
wrong. - Fix lockup when there are test cases with the same name.