2014-01-15 4 views
0

Мы используем paxexam 3.3.0 для тестирования пакетов, запущенных в Karaf 3.0.0, используя karafDistributionConfiguration() для развертывания файлов функций. Типичный UseCase выглядит следующим образом:Где должны проводиться тесты paxexam?

Bundle 1 - REST сервис HTTP
Bundle 2 - внедрение Service вызова внешнего API
Bundle 3 - Услуги по экономии осуществления транзакций запись в БД
Bundle 4 - Интерфейсы
Bundle 5 - Источник данных

Мой вопрос: Существуют ли четкие соглашения о том, где должны находиться тестовые случаи интеграции paxexam? Должны ли тесты paxexam всегда жить в отдельном проекте maven? Это, безусловно, имеет смысл для «полного» теста интеграции, когда несколько пакетов участвуют в одном тесте.

С другой стороны, имеет смысл иметь простые однокомпонентные интеграционные тесты как часть каждого проекта maven, так что, когда я выполняю сборку на одном проекте/комплекте, у меня есть возможность включить интеграционные тесты специфичный для этого пакета.

Мысли? Или Gotchas, я могу столкнуться с линией?

ответ

0

Мы также используем оба варианта в Apache Sling, вот пример каждого:

Pax экзаменационные тесты в отдельном комплекте:

https://svn.apache.org/repos/asf/sling/trunk/installer/it

экзаменационные тесты Pax в одной связке, используя a bundle.file.name системное свойство, установленное в POM, чтобы испытания могли найти комплект, который был только что построен:

https://svn.apache.org/repos/asf/sling/trunk/bundles/scripting/core - см. класс BindingsValuesProvidersByContextIT.java.

Я согласен с тем, что оба варианта действительны в зависимости от того, насколько «велики» тесты и проверяют ли они один пакет или комбинацию пучков.

Именование классов тестов с помощью ИТ-суффикса приводит к тому, что они выполняются отказоустойчивым плагином на этапах интеграции-тестирования, а не surefire на этапе тестирования.

0

Ну, экзамен Pax предназначен для проведения интеграционных тестов, поэтому рекомендуется проводить тесты интеграции отдельно от источников в тестовом модуле. Но можно также использовать Pax-Exam в том же комплекте, но нужно еще немного подержать. Вы найдете рабочий образец в my blog и gihub project.
Специалисты о добавлении классов, которые нуждаются в тестировании в тестовом контейнере pax-exam, потому что обычно пакет того же проекта еще не существует.

+0

Спасибо - сообщение в блоге было особенно полезно – user1132841

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