参数化JUnit测试非原始参数?

dat*_*tka 5 junit unit-testing parameterized

使用参数运行JUnit测试是很有可能的,其中相同的测试方法使用不同的数据执行多次,如下所述:http://junit.org/apidocs/org/junit/runners/Parameterized.html

不幸的是,似乎只能使用原始参数或字符串,而不是对象.有没有已知的解决方法?

ava*_*sen 7

data()使用@Parameters注释的方法类型是List<Object[]>,所以你可以放入任何对象.

要传入,例如,一个Money对象,要转换为列表的数组将是:

{{new Money(26,"CHF")},{new Money(12,"USD")}}

测试类的构造函数应该将Money对象作为参数.