我正在使用Spock Framework测试我的Java应用程序。每当我尝试使用通配符来检测Mock
的原语类型时,编译器都会发出警告。
例如(平凡的例子):
service.add(_, _) >> 42
上面的两个参数都是原语int
。编译器给出以下警告:
警告:(34,30)“服务”中的“添加”不能应用于“(java.lang.Object,java.lang.Object)”
在运行时,测试通过了,没有任何问题。但是,如果我试图指定通配符的类型,测试失败。
如何避免出现上述警告消息?
1条答案
按热度按时间wh6knrhe1#
您应该使用型别 Package 函数,而非基本型别。
请参阅github.com/jeffbrown/riccardocardin上的项目。
/src/test/groovy/riccardocardin/库测试的代码。
github.com/spockframework/spock/issues/669解释了为什么这不是一个错误。