我使用的是JUnit 5。您认为我遗漏了什么:\
class KPointTest {
@ParameterizedTest
@MethodSource("generateArgument")
void testForPoint(ArrayList<Point> points)
{
KPoint k = new KPoint(10);
for(Point po: points)
{
assertTrue(1 == k.point(po));
}
}
public static Stream<Arguments> generateArgument()
{
ArrayList<Arguments> p = new ArrayList<Arguments>();
p.add(Arguments.of(new Point(1,2)));
p.add(Arguments.of(new Point(3,7)));
p.add(Arguments.of(new Point(5,8)));
p.add(Arguments.of(new Point(4,8)));
return p.stream();
}
错误:
异常错误类型:转换索引0处的参数时出错:没有隐式转换来转换Lab_4.Point类型的对象到java.util.ArrayList类型
2条答案
按热度按时间vsaztqbk1#
试试看:
3j86kqsm2#
将测试编写为
您的测试方法只接收Stream的单个项,因此测试方法需要相应的参数。
您可以像这样为测试方法声明多个参数