2011-07-16 2 views
1

Мы используем ClassPathSuite, чтобы упростить тестирование: http://www.johanneslink.net/projects/cpsuite.jspКто-нибудь использует Junit4 с cpsuite-1.2.5 и EasyMock?

Это работает очень хорошо. Единственная проблема, с которой мы сталкиваемся, - это EasyMock. EasyMock отлично работает, если изолировать один тестовый класс. Но если мы попытаемся запустить все наши тесты с использованием ClassPathSuite EasyMock не работает правильно:

import org.junit.experimental.categories.Categories; 
import org.junit.experimental.categories.Categories.*; 
import org.junit.extensions.cpsuite.ClasspathSuite.*; 
import org.junit.runner.RunWith; 
import org.junit.runners.Suite.SuiteClasses; 

@RunWith(Categories.class) 
@ExcludeCategory(SlowTest.class) 
@SuiteClasses({AllCITests.class}) 
public class FastTestSuite { 

} 

Никаких исключений не происходит, однако следующий код, как представляется, не работает, как ожидалось (мы никогда не вернемся, что мы определяем в andReturn :)

EasyMock.expectLastCall().andReturn(somethingElse); 

кто-нибудь видел & решить эту проблему?

+0

Вы пробовали запустить несколько классов, включая тот, который терпит неудачу, не используя cpsuite? Как я сейчас смотрю, это инструмент управления для тестов, поэтому я не думаю, что это никому не мешает EasyMock –

+0

Если я запускаю с помощью обычного jUnit4, у меня нет никаких проблем с тестами EasyMock. Я запускаю те же три класса и те же тесты, но получаю разные результаты по сравнению с тем, когда я использую cpsuite. – Brian

ответ

0

Это не имело ничего общего с ClassPathSuite или EasyMock. Вместо этого это было вызвано использованием Singletons в нашем коде. У нас был особый сценарий, когда EasyMock не вызывался, потому что Singleton уже существовал для объекта, который мы пытались насмехаться.

 Смежные вопросы

  • Нет связанных вопросов^_^