Я работаю над проектом Java и меня интересует реализация алгоритма приоритезации тестовых случаев. Чтобы быть более конкретным c «дополнительная стратегия». Это алгоритм на основе покрытия. Это означает, что контрольные примеры располагаются по приоритетам в зависимости от объема кода, который они охватывают. У меня проблемы с поиском инструмента, который может дать мне индивидуальный охват тестовых случаев, а не проект. Я посмотрел на JaCoCo и OpenClover, эти инструменты предоставляют некоторую информацию, но, кажется, нет никакого способа для t ie данного теста для операторов и / или методов в коде проекта.
Для того, чтобы уточните, пожалуйста, посмотрите на XML ниже.
<project name="myProj">
<metrics methods="2" classes="2" statements="15" packages="1" />
<file path="F:\myProj\src\java\Main.java" name="Main.java">
<metrics methods="2" classes="2" statements="15" packages="1" />
</file>
</project>
<file path="F:\myProj\src\test\java\Test.java" name="Test.java">
<class name="Test">
<metrics methods="2" testruns="2" statements="6" coveredmethods="2" coveredstatements="9" testpasses="2"/>
<method name ="palindromTest">
<metrics statements="3" coveredmethods="1" coveredstatements="4" passed="true" file="StringManipulation.java"/>
<statement line="1"/>
<statement line="2"/>
<statement line="3"/>
<statement line="4"/>
</method>
<method name ="stringReverseTest">
<metrics statements="3" coveredmethods="1" coveredstatements="5" passed="true" file="StringManipulation.java"/>
<statement line="3"/>
<statement line="4"/>
<statement line="5"/>
<statement line="6"/>
<statement line="7"/>
</method>
</class>
</file>
Это пример того, что я хочу. из этого я вижу, что метод palindromTest охватывает 4 оператора. Я знаю, что два из этих утверждений также охватываются stringReverseTest. Я также вижу, что palindromTest покрывает 4/15 операторов в исходном коде, что делает его охват 26% или 13% уникальным. Это та информация, которая мне нужна. Однако найти инструмент, который делает это, кажется невозможным.