Skip to content

Topaz

Compare
Choose a tag to compare
@joakim-brannstrom 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 all test_cmd after build_cmd is executed and
    no mutant is inserted. When a mutant is later on inserted the resulting
    test_cmds are compared to the unmodified. Only those that are different
    are classified as affected and thus need to be executed. If no test_cmd
    is affected by the inserted mutant the mutation is classified as
    equivalent. Set test_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.