Какова правильная терминология и лучшая практика для общих приборов между тестовыми классами? - PullRequest
0 голосов
/ 22 июня 2010

Насколько я понимаю, в Junit 4 @Before можно использовать для настройки тестовых приборов для нескольких методов тестирования класса тестирования.

Однако в моей системе есть общие тестовые объекты, которые я хотел бы иметь в наличии для всех тестов.

Какое имя наиболее подходит для этих объектов и каков наилучший способ их хранения?

Ответы [ 4 ]

3 голосов
/ 22 июня 2010

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

1 голос
/ 22 июня 2010

Определенно есть вариант использования для обмена данными между тестовыми примерами. Для этого JUnit предоставляет аннотацию @BeforeClass. Надеюсь, тебе должно помочь ...

http://junit.sourceforge.net/javadoc/org/junit/BeforeClass.html

0 голосов
/ 22 июня 2010

Почему бы не иметь абстрактный суперкласс BaseTest, который содержит общие объекты и инициализирует их, либо в конструкторе, либо в методе @BeforeClass?

0 голосов
/ 22 июня 2010

Предпочтительные имена для ваших общих тестовых объектов будут зависеть от того, чем на самом деле являются эти объекты (я не могу помочь, если вы не предоставите более подробную информацию). Если вы хотите разделить объект между всеми тестами, тогда он должен быть статическим в вашем тестовом классе (JUnit будет воссоздавать тестовый класс перед каждым тестом).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...