Junit创建没有ant / maven的报告

时间:2012-03-27 13:32:24

标签: java junit report

是否可以在没有Ant或Maven的情况下从JUnit创建报告?因为我使用velocitycode调用测试,而velocitycodes调用方法。该方法调用所有测试。所以我可以得到它的响应,失败/错误/运行等。但我想用它创建一个报告..或者我是否需要自己创建HTML内容?

我在Java中创建了方法和测试方法,因此除了调用Velocity代码之外,我将用Java完成所有工作。

Velocitycode:

  

$ {custom.test}

Java代码:

  

public void getTest(){
      junit.textui.TestRunner runner = new junit.textui.TestRunner();
      TestResult testresult = Junit.textui.TestRunner.run(runner.getTest(MyTestClass.class.getName()));       
}

2 个答案:

答案 0 :(得分:1)

您将需要ant库。但是使用此代码,您可以创建XML报告并在其他图表中使用它。比如詹金斯。

public static void getTest(){
    String pathToReports = "C:\\path\\to\\the\\Reports";
    Project project = new Project();

    try {
        new File(pathToReports).mkdir();
        JUnitTask task = new JUnitTask();

        project.setProperty("java.io.tmpdir",pathToReports);
        task.setProject(project);

        FormatterElement.TypeAttribute type = new FormatterElement.TypeAttribute();
        type.setValue("xml");

        FormatterElement formater = new FormatterElement();   
        formater.setType(type);
        task.addFormatter(formater);

        JUnitTest test = new JUnitTest(YOURTEST.class.getName());
        test.setTodir(new File(pathToReports));

        task.addTest(test);         
        task.execute(); 
    } catch (Exception e) {
    }

}

答案 1 :(得分:0)

不要这么认为。但您可以将ant用作库而不是工具,并使用该工具用于生成这些报告的相同代码。