在JUnit5中不包括@BeforeEach和@AfterEach的持续时间

问题描述

我注意到,junit5 @BeforeEach和@AfterEach被包含在Test持续时间中。我正在编写一个性能测试,其结果显示在Jenkins性能报告中,该报告从junit5结果中获取数据并绘制一个Graph,但问题在于它包含@BeforeEach和@AterEach阶段的持续时间。此处的示例:

public class TestClass
{
  @BeforeEach
  public void init()
  {
    Thread.sleep(10000)
  }

  @AfterEach
  public void cleanUp()
  {
    Thread.sleep(10000)
  }

  @Test
  void test1()
  {
    Thread.sleep(5000)
  }

  @Test
  void test2()
  {
    Thread.sleep(3000)
  }
}

问题是, test1()的持续时间不是5000毫秒,而是25000(10000 + 10000 + 5000), test2()的持续时间不是3000毫秒但是23000(10000 + 10000 + 3000)。

您有任何想法,如何重置或启动/停止测试计时器?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)