Я пытаюсь вызвать набор JUnit Test с помощью API. Я знаю, что вы можете до номера тестовых классов, используя следующие:Как программно выполнить тестовый набор с помощью JUnit4?
@RunWith(Suite.class)
@Suite.SuiteClasses({
Test1.class,
Test2.class, ...
})
Но есть способ, чтобы вызвать весь набор, используя API Java, используя JUnitCore, например?
Например, вы можете запустить тест, используя следующий код:
Runner r =
try {
r = new BlockJUnit4ClassRunner(Class.forName(testClass));
} catch (ClassNotFoundException | InitializationError e) {
// handle
}
JUnitCore c = new JUnitCore();
c.run(Request.runner(r));
Update:
Из API, кажется, что само по себе люкс класса бегун, следовательно, следующий код, кажется, работает:
Suite suite = new Suite(klass, new RunnerBuilder() {
... // Implement methods
});
JUnitCore c = new JUnitCore();
c.run(Request.runner(suite));
Но я не уверен, если это рекомендуемый подход, или если есть какой-либо недостаток писать т он выше кода.
Спасибо Мэтью! Я обязательно попробую. А пока у вас есть рекомендации по фрагменту кода в моем обновлении? – Neel