创建Java报表项目 - 想使用JUnit和Ant但不知道如何(Creating a Java re

2019-10-29 12:07发布

我感兴趣的是产生了一定组使用JUnit在我公司(非软件)工程师报告。 与典型的JUnit测试你在哪里,确保对象,方法等都没有错误,我想使用JUnit确认是否会导致较大的日志文件都在范围之内,并给它的报告。

我的背景:与Java经验。 我熟悉JUnit 4,我已经花了近小时或2翻翻ANT文件,我想我有它是如何工作的一个强烈的想法(我只是不知道所有的XML命令),我使用Eclipse宗教。 具体的Eclipse六月(最新)。

我的目标是创建一个断言,如果在日志中值是正确的范围内测试用例的转换。 测试类然后可以在每一个日志文件中反复执行。 每次运行后,其结果将被添加到一个HTML文件。

我知道JUnit的报告中蚂蚁的功能,但我有很多的麻烦把所有谜题的碎片一起正常。 我知道我可以破解我的方式,通过这个项目很容易,但我想这样做的正确方法。

可以在任何点我在正确的方向如何:

  • 做出正确的build.xml文件
  • 建立JUnit类/套/亚军,使其运行一遍又一遍的日志给定名单
  • 建立ANT所以它输出HTML / XML以及如何将其指向正确的样式表,因此它可以在IE / Firefox中打开
  • 如何使输出文件
  • 覆盖功能,这样的报告是自定义的。
  • 什么来覆盖后处理。 (这样我就可以输出HTML转换成PDF等)
  • 如何创建一个独立的可执行文件,它会自动做这一切 - 也许结合了摆动小,如果用户不手动提供输入。
  • 如何正确循环通过多次试验(目前我只是作出主要功能和改进:

码:

public static void main(String[] args) {
    JUnitCore junit = new JUnitCore();
    RunListener listener = new RunListener();
    junit.addListener(listener);
    Result result = junit.run(GearAndBrakeFaultLogReports.class);
    for (Failure f : result.getFailures()) {
        System.out.println(f.toString());
        System.out.println(f.getDescription());
        System.out.println(f.getTestHeader());
        System.out.println(f.getException());
        System.out.println(f.getMessage());
    }
    System.out.println("Done.");
}
  • 我有一种感觉,就是这样做的“哈克”的方式,如果我知道如何插入蚂蚁得当,它将运行我的测试中,生成XML / HTML和我将有输出所需。

我想作为该项目的发展,我将有更多的问题,但我认为在越过最初的驼峰将是我非常好! 我知道有很多问题,所以任何帮助,我会很乐意指出撞:)我的希望是,有人熟悉这些工具可以回答所有这些与指向我的网站,功能或示例项目的问题,做了类似的事情。

Answer 1:

为了创建从JUnit测试结果的PDF: http://junitpdfreport.sourceforge.net/managedcontent/

作为一个单元测试frameword,JUnit的报告是非常具体的软件工程。 虽然,你也许可以自定义为一个非单元测试场景,它将采取了很多定制的。 不同于其他测试框架(如TestNG的)的JUnit并没有提供让自己的报表生成器的能力。 TestNG的,但是可以用来运行JUnit测试,甚至除了其自己的报告生成JUnit的报告。 TestNG的可以运行JUnit测试,然后通过提供org.testng.IReporter界面的自定义实现创建自定义报表。

http://testng.org/doc/documentation-main.html

现在已经连续多年在Java编写的报告,我会强烈建议您尝试了报告工具,如JasperReports的和iReport的工具。 Jasper报表可以处理自定义数据源,如您的日志文件,并产生多种格式,包括XML,HTML和PDF报告。

http://community.jaspersoft.com/project/ireport-designer



文章来源: Creating a Java reporting project — would like to use JUnit and Ant but not sure how