我还没有办法摆脱这种情况,'' csv资源文件中由CsvFileSource junit5批注使用的字符。因此,任何包含逗号的字符串都会被切成两半而第二部分永远不会被使用。
是否有一些解决方法?
编辑:原始问题尚未完成。问题是我的资源中有逗号和双引号。参数化测试处理引号但不同时处理两者。示例csv line:
5,10,5,53,"</identity/partners?limit=5&cursor=5>; rel="prev", </identity/partners?limit=5&cursor=15>; rel="next""
报价被正确转义,但只有在出现一个狂野逗号时(这是我猜的算法)。
因此得到的断言看起来像这样:
"Link" was not "\"</identity/partners?limit=5&cursor=5>; rel=\"prev\"", was "</identity/partners?limit=5&cursor=5>; rel="prev", </identity/partners?limit=5&cursor=15>; rel="next""
答案 0 :(得分:1)
将您的值包含在双引号:"first, value", second, third and last one
在您的情况下,您可以在注释中指定完整的不同分隔符字符:http://junit.org/junit5/docs/snapshot/api/org/junit/jupiter/params/provider/CsvFileSource.html#delimiter--
但它已不再是&#34;逗号&#34;分开的值......