JUnit5 CsvFileSource - 转义逗号(双引号后)

时间:2017-11-30 11:53:32

标签: csv junit5

我还没有办法摆脱这种情况,'' 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""

1 个答案:

答案 0 :(得分:1)

将您的值包含在双引号"first, value", second, third and last one

此处有更多详情:http://junit.org/junit5/docs/current/user-guide/#writing-tests-parameterized-tests-sources-CsvFileSource

在您的情况下,您可以在注释中指定完整的不同分隔符字符:http://junit.org/junit5/docs/snapshot/api/org/junit/jupiter/params/provider/CsvFileSource.html#delimiter--

但它已不再是&#34;逗号&#34;分开的值......