我想在JUnit中为测试运行创建自定义html报告。我遇到的问题是在完成所有测试后释放资源并关闭标签。
我打开一个FileChannel写入报告。由于每个测试应该是带有行的表,并且有数百个,我不想为每个测试打开和关闭通道。这里出现的问题是测试组织 - 我有嵌套套件,因此testRunFinished不是一个选项(指单套件,不是所有测试,我看到this question)。 TestWatcher也不会帮助我,因为它只涉及单一测试。
使用的工具:maven 3.0.5,ff webdriver,junit 4.11。
我正在考虑两种选择: 1)每次试运行时打开和关闭通道 2)覆盖finalize()使其关闭通道
他们似乎都不漂亮......我搜索了很多页面,但似乎没有人遇到同样的问题。
任何更漂亮的解决方案?
答案 0 :(得分:5)
是的,请看这里(Before and After Suite execution hook in jUnit 4.x):
@RunWith(Suite.class)
@SuiteClasses({Test1.class, Test2.class})
public class TestSuite {
@BeforeClass
public static void setUp() {
System.out.println("setting up");
}
@AfterClass
public static void tearDown() {
System.out.println("tearing down");
}
}