多参数参数化注解 @CsvSource。
@CsvSource 通过指定的分隔符实现参数化。
package com.mytest; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; public class CsvParamDemoTest { @ParameterizedTest //注解指定数据源为 csv 数据,csv默认分隔符为 , @CsvSource({"张三,3", "李四,15", "王五,8"}) void testParamCsv1(String name, Integer age) { assertEquals(name.length(),2); assertTrue(age > 2); } @ParameterizedTest //注解指定数据源为 csv 数据,delimiterString 指定数据的分割符 @CsvSource(value = {"张三|3", "李四|15", "王五|8"}, delimiterString = "|") void testParamCsv2(String name, Integer age) { assertEquals(name.length(), 2); assertTrue(age > 2); } }
- 多参数文件参数化注解 @CsvFileSource
- 在项目的 test/resources 中新增测试数据 csv 文件
- @CsvFileSource 支持指定的分隔符进行参数化
新建2个数据文件
data.csv使用 ,
分隔:
张一三,3
李四,15
王五,8
data2.csv使用 |
分隔
张一三|3
李四|15
王五|8
从csv文件中读取数据信息。
读取数据文件使用 ,
分隔
读取数据文件使用 |
分隔
package com.mytest; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvFileSource; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; public class CsvFileParamDemoTest { @ParameterizedTest // @CsvFileSource 注解指定数据源为 csv 数据,csv默认分隔符为 , @CsvFileSource(resources = "/data.csv") void testParamCsvFile(String name, Integer age) { assertEquals(name.length(), 2); assertTrue(age > 2); } @ParameterizedTest // @CsvFileSource 注解指定数据源为 csv 数据,delimiterString 指定数据的分割符 @CsvFileSource(resources = "/data2.csv", delimiterString = "|") void testParamCsvFile2(String name, Integer age) { assertEquals(name.length(), 2); assertTrue(age > 2); } }
标签:name,org,jupiter,CsvSource,import,参数,csv,junit From: https://www.cnblogs.com/ixtao/p/17653005.html