Я знаю, что это старая ветка, но я объяснил здесь , как настроить TestHTMLReporter
и вот она:
С вашим customReport
Вы должны реализоватьIReporter
, расширение TestListenerAdapter
и переопределение метода generateReport
, если вы хотите реализовать пользовательский TestHTMLReporter
.Для других репортеров вам, возможно, придется действовать по-другому, но концепция останется прежней.Вы получите собственный 'TestHTMLReporter', как показано ниже.
Создайте файл CustomReport.java
в своем проекте и скопируйте и вставьте все содержимое TestHTMLReporter.java
, измените имя файла в методе getOutputFile
и введитебудет выглядеть следующим образом:
public class CustomReport extends TestListenerAdapter implements IReporter {
@Override
public void generateReport(List<XmlSuite> xmlSuites, List<ISuite> suites,
String outputDirectory) {
}
...
//paste the content of TestHTMLReporter.java here
...
...
Убедитесь, что все ваши операции импорта выполнены с TestHTMLReporter.java
Теперь, в этом файле измените в соответствии с вашими требованиями.Например: если вы хотите добавить время окончания каждого теста, то в правильном месте в методе generateTable
добавьте приведенный ниже фрагмент
// Test class
String testClass = tr.getTestClass().getName();
long testMillis = tr.getEndMillis();
String testMillisString = Long.toString(testMillis);
if (testClass != null) {
pw.append("<br>").append("Test class Name: ").append(testClass);
// this line to add end time in ms
pw.append("<br>").append("End Time(ms): ").append(testMillisString);
// Test name
String testName = tr.getTestName();
if (testName != null) {
pw.append(" (").append(testName).append(")");
}
Тогда вы получите, как показано ниже
Теперь вы получите два отчета: один по умолчанию, а другой - с именем вашего файла.Теперь остается только отключить прослушиватели отчетов по умолчанию, так что вы получите только один отчет.Для этого вы можете следовать этому или искать решения.Надеюсь, это поможет