У меня есть тестовый класс, содержащий тестовые примеры для синих и несиновых устройств. Если параметр isBlue установлен, тогда он должен запускать только те тестовые примеры, которые говорят аннотацию @Blue. Я не уверен, как реализовать эту конкретную аннотацию, которая позволит достичь этой функциональности.Запуск специального модульного теста в соответствии с условием
public class TestClass {
boolean isBlue = false;
@Before
public void setUp() {
isBlue = MyApplication.instance().isBlue();
}
@Test
public void testA() { ... }
@Test @Blue
public void testB() { ... }
}
В этом примере, если isBlue
является true
, то он должен работать только testB()
в противном случае он должен выполнить все тестовые случаи
Я не использовал их, но это может быть вариант использования для JUnit [категории] (https: // GitHub. ком/JUnit-команда/junit4/вики/категории). Вы также можете просто решить это с наследованием. –
Несмотря на некоторые подходы, которые могут быть полезны здесь, я думаю, что ваш тест должен быть разделен на два - тест для синих устройств и тест на несиновые устройства. И вы, вероятно, должны запускать использование объектов Mock, с помощью которых вы могли бы моделировать поведение/свойства ваших объектов (например, «MyApplication») –