原创 | TDD工具集:JUnit、AssertJ和Mockito (二十一)编写测试-动态测试


重要性:★★☆☆☆
注解为的测试方法是静态的,因为其行为是在编译时完全决定的,不能在运行时进行修改。(假设)提供了一定程度的动态行为(根据运行时环境条件动态调整测试执行)。
JUnit Jupiter提供了一种新的测试编程模型。可以通过注解了的测试工厂方法在运行时生成动态测试。
技术上而言,测试工厂方法必须返回单个的实例,或由组成的StreamCollectionIterableIterator或数组。有两个可实例化的子类:
和。包括一个显示名和一组动态的子节点,能够用来创建任意多层的嵌套动态节点树。实例将被延迟执行,能够动态地甚至非确定性地生成测试用例。
返回的任何流将由JUnit通过调用正常关闭,因此使用类似这样的资源是安全的。
跟方法一样,方法也必须是非private、非静态的,可以包含能够通过参数解析器解析的参数。
是由测试工厂方法在运行时生成的测试用例,它由一个显示名和一个组成。
与不同,生命周期方法是针对整个测试工厂方法的,而不是针对测试工厂方法生成的每个测试用例。也就是说,模板方法生成的多个测试用例共享相同的测试类实例,一个测试用例修改了测试类的状态可能会影响下一个测试用例,因此必须小心对待。
详细的动态测试代码演示戳这里↓↓↓
本文相关开源代码戳这里下载↓↓↓

如果觉得有收获,点个【赞】鼓励一下呗!