首页 > 解决方案 > 结合@ParameterizedTest 和@MethodSource

问题描述

因此,我正在创建一些 POC 测试用例,这些测试用例利用测试类的扩展来进行日志记录。

它通常看起来像这样

@ExtendWith(LoggingExtension.class)
public class SampleTest{
    @Test 
    public void SampleTest(Logger logger){
    }
}

但我也想将数据驱动的测试设计结合到其中,这样我就没有数千个测试,而只有一个包含 csv 行的通用测试。我想我可以使用@CSVSourceFile,但这需要我将所有参数列出到测试函数中,一旦我有数十个参数要测试(除非有更好的方法),它就会变得低效,所以我是考虑利用 @MethodSource 来利用一个函数,该函数将传入字符串流,其中每个字符串代表 csv 文件中的一行。但如果我这样做,我必须添加一个额外的参数,我认为它不会正常工作。有没有人有一种将两者结合起来的最佳方法?

谢谢

标签: javatestingjunitautomated-testsdata-driven-tests

解决方案


推荐阅读