如何解决JUnit5-从json文件动态展示测试用例名称
我想在使用Junit5 ..运行测试用例时动态显示测试用例的名称,所以请帮助我
@ParameterizedTest
@JsonFileSource(resouce="file1.json")
public void abcTest(JsonObje obj){
}
file1.json
[{
"test-case-name" : "test case for infant","ageGroup" : "infant"
},{
"test-case-name" : "test case for adult","ageGroup" : "adult"
},{
"test-case-name" : "test case for mature","ageGroup" : "mature"
}
]
I want to display test case name dynamically on running the test cases using Junit5..
For example ... :
test case for infant
test case for adult
test case for mature
...
我想在使用Junit5运行测试用例时动态显示测试用例名称。 例如
解决方法
您提供的信息不多,但是我相信您希望使用JUnit's Dynamic Tests而不是参数化测试。
@TestFactory
Collection<DynamicTest> dynamicTestsFromCollection() {
JsonArray array = ...
List<DynamicTest> tests = new ArrayList<>();
for (JsonObject testCase: array) {
String testCaseName = testCase.get("test-case-name");
String ageGroup = testCase.get("age-group");
tests.add(DynamicTest.dynamicTest(testCaseName,() -> testAbc(ageGroup)));
}
return tests;
}
这将为您的每个年龄段创建一个单元测试。
,我尝试遵循@CsvFileSource示例,但是它没有帮助。 https://www.petrikainulainen.net/programming/testing/junit-5-tutorial-writing-parameterized-tests/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。