Time 注释以记录Junit5中每个测试用例的执行时间
我需要记录每个测试用例的执行时间。我不想使用自定义实现。我想知道junit5中是否有可用于此的注释。顺便说一句,我知道有关junit5文档的Time 注释以记录Junit5中每个测试用例的执行时间,time,execution,junit5,Time,Execution,Junit5,我需要记录每个测试用例的执行时间。我不想使用自定义实现。我想知道junit5中是否有可用于此的注释。顺便说一句,我知道有关junit5文档的Stopwatch或Junit4@Timeout在查看junit5文档后,我发现了此示例 此代码段来自他们的文档: @ExtendWith(TimingExtension.class) class TimingExtensionTests { @Test void sleep20ms() throws Exception { Threa
Stopwatch
或Junit4@Timeout
在查看junit5文档后,我发现了此示例
此代码段来自他们的文档:
@ExtendWith(TimingExtension.class)
class TimingExtensionTests {
@Test
void sleep20ms() throws Exception {
Thread.sleep(20);
}
@Test
void sleep50ms() throws Exception {
Thread.sleep(50);
}
}
编辑:我写了一篇你可以申请的文章。您可以按如下方式使用它:
@Benchmark
class BenchmarkTest {
@Test
void notBenchmarked() {
assertTrue(true);
}
@Test
@Benchmark
void benchmarked() throws InterruptedException {
Thread.sleep(100);
assertTrue(true);
}
}
应用到类时,您将得到一条消息,其中包含该类中所有测试方法的总运行时间。当应用于单个测试方法时,您将仅获得该测试的消息
我希望它最终能找到自己的路。Junit5也有一个注释
还有一个assertTimeout
和asserttimeoutpremptive
(请参阅)
最后,JUnit4秒表功能在JUnit5中不可用。如前所述,使用
TimeExtension
。但是,此扩展不是分布的一部分(请参阅)。如果您使用Sonarqube,您可以找到每个测试的持续时间以及按时间排序的所有测试的总数
当你把自己的项目名称搞砸时。。。