Несмотря на то, что это может быть ложное сообщение, вызванное «глупой» ошибкой EasyMock, оно также может быть связано с неправильным использованием EasyMock API.В моем случае сообщение возникло из этого теста JUnit 3.8 (и, как и вы, это происходило только тогда, когда я запускал весь свой набор тестов, и только через Maven, а не Eclipse):
public void testSomething() {
// Set up
MyArgumentType mockArg = (MyArgumentType) EasyMock.anyObject(); // bad API usage
// Invoke the method under test
final String result = objectUnderTest.doSomething(mockArg);
// Verify (assertions, etc.)
...
}
Вместо использования anyObject(), Я должен был использовать createMock (MyArgumentType.class) или один из его вариантов.Я не знаю, о чем я думал, я написал миллионы этих тестов и правильно использовал API.
Смущает то, что тест, который завершается неудачно с сообщением "неправильное число соответствий", не является "Не обязательно (или никогда?) тот, в котором вы использовали API неправильно.Это может быть первый тест, выполненный после глючного, который содержит метод replay () или verify (), но я не проверял это экспериментально.