2010-03-16 7 views
30

Я пытался выяснить, как запускать параметризованные тесты в Junit4 вместе с PowerMock. Проблема заключается в том, что использовать PowerMock вам нужно украсить ваш тестовый класс сJunit Параметрированные тесты вместе с Powermock - как?

@RunWith(PowerMockRunner.class) 

и использовать параметризованные тесты, которые должны украсить

@RunWith(Parameterized.class) 

Из того, что я могу видеть, что они, кажется, взаимно исключаются !? Это правда? Есть ли способ обойти это? Я попытался создать параметризованный класс внутри класса, работающего с PowerMock; что-то вроде этого:

@RunWith(PowerMockRunner.class) 
class MyTestClass { 
    @RunWith(Parameterized.class) 
    class ParamTestClass { 
      // Yadayada 
    } 
} 

Но, к сожалению, это не делает много хорошего ... The ParamTestClass еще не работает с поддержкой PowerMock (не то, что удивительно, может быть) ... А я вроде выбежать идей, поэтому любая помощь очень ценится!

Обновление: Для будущих Googlers также посмотреть: Using PowerMock without the RunWith?

ответ

0

Вы не можете использовать два класса бегунов на один раз, так что вы, безусловно, придется написать свой собственный тест бегун, чтобы это произошло.

Я ничего не знаю о Powermock, но после 10 секунд исследования, похоже, что одним из решений было бы написать тестовый бегун, который использует загрузчик классов powermock и запускает параметризованные тесты. Если вы можете понять, как делегировать параметризованный тестовый бегун из своего пользовательского тестового бегуна, это может быть вашим лучшим выбором.

+0

Благодарим за предложение. Я посмотрю на загрузчик классов powermock. –

14

Да, это работает с использованием PowerMock Rule, если вы используете JUnit 4.7+.

16

У меня была та же проблема. К сожалению, это не позволило мне использовать правило PowerMock из-за JVM, который у меня был. Вместо правила я использовал RunnerDelegate.

@RunWith(PowerMockRunner.class) 
@PowerMockRunnerDelegate(Parameterized.class) 
+0

Если бы такая же проблема с JVM, это решение работало как шарм. Ура! –

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

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