因为测试方法有很多用例,如何收集这些用例?
像jest
javascript单元测试
describe('test methon', () => {
test('user case one', () => {
//test code
});
test('user case two', () => {
//test code
});
test('user case three', () => {
//test code
});
test(...)
});
我不知道JUnit5中的任何内容都可以像您显示的javascript中的测试一样表现力和简洁。但是至少要考虑一件事,它允许您以类似的方式对测试进行分组。
这是@Nested注解。它允许您将一组测试分组为一个逻辑组。一旦执行了测试包,将更容易浏览和了解哪些测试组通过/失败。如果您在JUnit测试用例类中有大量测试,则非常有用。这是一个看起来像的例子:
public class YourTestCase {
…
@Nested
@DisplayName("Tests for my method")
class MyMethodUseCases {
@Test
void testUseCase1() {
...
}
@Test
void testUseCase2() {
...
}
@Test
void testUseCase3() {
...
}
}
如果您的测试组共享一些需要在执行测试之前设置的上下文,那么您还可以考虑使用特殊的JUnit运行器,例如HierarchicalContextRunner。这不是标准JUnit的一部分,而是自定义扩展。
最后,如果用例之间的唯一区别是数据输入,那么您可以考虑使用@ParametrizedTest批注。它允许您编写一个测试并使用多个数据输入执行它。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句