Я знаю два способа использования аннотаций «Mock» и «TestSubject» с JUnit. Первый — указать объект класса EasyMockLoader для аннотации RunWith для класса, содержащего поля, отмеченные этими аннотациями. Второй — пометить поле EasyMockRule аннотацией «Правило». Как использовать аннотации «Mock» и «TestSubject» с TestNG?
Использование EasyMock с TestNG
Ответы (2)
TestNG напрямую не поддерживается. Но вы можете легко вводить макеты, используя аннотации, выполнив
EasyMockSupport.injectMocks(this);
(из вашего тестового класса)
person
Henri
schedule
29.10.2016
Я работаю над встроенной интеграцией TestNG: github.com/easymock/easymock/pull/186.
- person juherr; 30.10.2016
Это работает, но должно быть
EasyMockSupport.injectMocks(this);
.
- person Vic; 21.04.2017
Насколько мне известно, EasyMock не поддерживает TestNG из коробки, но PowerMock поддерживает. Возможно, использование PowerMock + EasyMock + TestNG будет работать как шарм.
В противном случае, о @Mock
, вам придется управлять им самостоятельно (искать поля, создавать макеты и внедрять их) с помощью метод конфигурации (метод @BeforeX
) или соответствующий слушатель. Другим решением может быть использование интеграции с Guice и создание макетов в модуль Guice.
То же решение для @TestSubject
: методы конфигурации или слушатели.
person
juherr
schedule
28.10.2016