Any() 方法无法在 Java 1.8 中使用 Mockito 1.10.9 进行编译
Any() method fails to compile in Java 1.8 with Mockito 1.10.9
我的以下代码适用于 Java 1.7,Mockito 版本为 1.10.19。
@Test
public void populateUsersEmpty() {
// arrange
List<UserDTO> users = new ArrayList<UserDTO>();
// act
requestBuilder.populateUsers(mxsMessageOutMock, users);
// assert
verify(mxsMessageOutMock, times(0)).addRecordSet(CreateNewAlertRequestBuilder.MXS_RECORDSETNAME_USERS);
verify(mxsMessageOutMock, times(0)).addFieldNewRecord(anyString(), anyString());
verify(mxsMessageOutMock, times(0)).addField(anyString(), any());
}
但是当我使用相同版本的 Mockito 移动到 Java 1.8 时,它开始显示以下错误(粗体)。当我查看 Mockito 网站时,我发现 Mockito 3 尚未支持 java 8。如果支持,那么解决方案是什么?我应该等待他们发布还是有什么办法可以解决这个问题。我尝试传递 AnyString() 代替 any() 但我的代码仍然中断。甚至 anyObject() 也没有帮助我。
verify(mxsMessageOutMock, times(0)).addField(anyString(), anyString());
CreateNewAlertRequestBuilderTest.java:436:0::0 方法 addField(String, String) 对于 IMXSMessageOut 类型不明确
[ant:iajc] [error 7]: 验证错误(mockMessageOut, times(0)).addField(anyString(), any());
我知道如果没有完整的代码很难提出建议,但在这里我可以分享一段代码。
any(String.class)
?如果 addField 正在接受 String, String
为什么不使用 anyString(), anyString()
我的以下代码适用于 Java 1.7,Mockito 版本为 1.10.19。
@Test
public void populateUsersEmpty() {
// arrange
List<UserDTO> users = new ArrayList<UserDTO>();
// act
requestBuilder.populateUsers(mxsMessageOutMock, users);
// assert
verify(mxsMessageOutMock, times(0)).addRecordSet(CreateNewAlertRequestBuilder.MXS_RECORDSETNAME_USERS);
verify(mxsMessageOutMock, times(0)).addFieldNewRecord(anyString(), anyString());
verify(mxsMessageOutMock, times(0)).addField(anyString(), any());
}
但是当我使用相同版本的 Mockito 移动到 Java 1.8 时,它开始显示以下错误(粗体)。当我查看 Mockito 网站时,我发现 Mockito 3 尚未支持 java 8。如果支持,那么解决方案是什么?我应该等待他们发布还是有什么办法可以解决这个问题。我尝试传递 AnyString() 代替 any() 但我的代码仍然中断。甚至 anyObject() 也没有帮助我。
verify(mxsMessageOutMock, times(0)).addField(anyString(), anyString());
CreateNewAlertRequestBuilderTest.java:436:0::0 方法 addField(String, String) 对于 IMXSMessageOut 类型不明确 [ant:iajc] [error 7]: 验证错误(mockMessageOut, times(0)).addField(anyString(), any());
我知道如果没有完整的代码很难提出建议,但在这里我可以分享一段代码。
any(String.class)
?如果 addField 正在接受 String, String
为什么不使用 anyString(), anyString()