2016-11-28 2 views
0

В пучке, который содержит интеграционные тесты, я хотел бы все классы, чьи имена заканчиваются Test следует рассматривать в качестве тестов и выполняется при запуске OSGi Framework JUnit Тесты.Запуск тестов, идентифицированных по шаблону имени в Bndtools/BND

Директива Test-Classes в файле bnd.bnd представляется подходящим местом для указания этого вопроса. Однако документация для макроса classes на http://bnd.bndtools.org/macros/classes.html разрежена.

Поэтому мой вопрос заключается в том, чтобы сформировать директиву включить все классы заканчивая Test вдоль линий

Test-Cases: ${classes that end with Test} 

ответ

0

Мои эксперименты до сих пор выявлено, что эта директива делает трюк:

Test-Cases: ${classes;CONCRETE;NAMED;*Test} 

CONCRETE гарантирует, что учитываются только конкретные типы, например исключает абстрактные типы. И NAMED, за которым следует шаблон *Test, учитывает только те классы, имена которых заканчиваются тестом.

Поскольку JUnit 4 может выполнять только публичные тесты, другое ограничение может быть PUBLIC. Например:

Test-Cases: ${classes;CONCRETE;PUBLIC;NAMED;*Test} 

С другой стороны, вы можете предпочесть, чтобы JUnit неудачи непубличных тестов, а не молча игнорировать их (если PUBLIC был указан).

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