2015-01-05 3 views
1

В моем коде я использую @RunWith(JUnitParamsRunner.class) на уровне класса и в тестовом классе, я должен использовать PowermockRule@RunWith (JUnitParamsRunner.class) и PowerMockRule

код что-то вроде этого

@RunWith(JUnitParamsRunner.class) 
public class ClassName 
{ 
    @Mock 
    Class c1; 

    @Rule 
    PowerMockRule rule=new PowerMockRule(); 

    @Before 
    setUp() 
    { 
     MockitoAnnotations.initMocks(this); 
    } 

    //Test Case here 
} 

Это дает мне java.lang.ExceptionInInitializerError

Я не уверен, что нам не разрешено инициализировать это методом setUp.

Я пробовал использовать @PowerMockRunnerDelegate(JUnitParamsRunner.class), но это также дает мне ошибку сопряжения. Using Mockito 1.9 and PowerMock 1.5

Можете ли вы помочь мне узнать, что я делаю неправильно?

+1

Код здесь не компилируется. Не могли бы вы сначала исправить ошибки компиляции? – NamshubWriter

+0

код в настоящее время исправлен – Chirag

+0

Вы используете Mockito 1.9.0 или 1.9.5? Потому что согласно вики PowerMock 1.5 работает только с Mockito 1.9.5: https://code.google.com/p/powermock/wiki/MockitoUsage13 – bluelDe

ответ

-1

Я столкнулся с такой же проблемой сопряжения при использовании подхода @PowerMockRunnerDelegate (JUnitParamsRunner.class). Я продолжаю попытки и ошибки, и, наконец, я нашел, что это работает, когда я добавляю аннотацию @PrepareForTest под каждым отдельным методом вместо уровня класса.

Надеюсь, это поможет.

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