软件测试学习笔记丨 JUnit5 动态测试创建
本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/28217
概念
动态测试是 JUnit5 中引入的一种新的编程模型。
这种新的测试就是动态测试,它是由 @TestFactory 注解的工厂方法在运行时生成的。
什么是动态测试
动态测试:就是 DynamicTest 在运行的时候动态的生成测试用例。由 @TestFactory 注解声明的方法。
静态测试:@Test 注解的测试用例,因为该用例在编译时已经完全指定好的
动态测试与静态测试区别
与 @Test 方法相比,@TestFactory 方法本身不是测试用例,而是测试用例的工厂。所以得到结论:动态测试是工厂的产物。
动态测试 DynamicTest 与标准 @Test 用例完全不同执行方式不同,动态测试「DynamicTest」不支持生命周期回调。
动态测试的构成
方法上必须有 @TestFactory 注解。
由显示名称和 Executable 组成。
方法返回值类型。「流、集合、迭代器」 Stream Collection Iterable Iterator DynamicNode > 如果不返回以上类型会发生什么?
动态测试的构成
返回其它类型报错:JUnitException
创建
静态测试用例
动态测试用例
pom 文件
复制代码
静态测试用例创建
复制代码
改编静态测试为动态测试
复制代码
结论
动态测试是在运行时通过工厂方法使用 @TestFactory 注解生成的测试。
标记为 @TestFactory 的方法不是测试用例,而是测试用例的工厂
复制代码
软件测试开发免费视频教程分享
![](https://static001.geekbang.org/infoq/17/1752bb4f67b5a4b288d9971aece82ee8.png)
版权声明: 本文为 InfoQ 作者【测试人】的原创文章。
原文链接:【http://xie.infoq.cn/article/54398fd3fb3339a7df2064a3a】。文章转载请联系作者。
评论