2013-04-11 2 views
3

Я использую Arquillian для тестирования приложения Java EE против Glassfish, до сих пор я столкнулся с проблемой производительности, каждый тестовый пример занимает больше минуты, и 60 тестовых случаев означают час до запустить. и, следовательно, сборка займет больше часа.Оптимизация производительности Arquillian при запуске нескольких тестов

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

Есть ли способ сгруппировать тестовые примеры по каждому проекту, добавить все классы, создать один архив Deployment и выполнить несколько тестов в одном развертывании, как если бы они были одним тестовым классом?

ответ

-1

Используйте тестовый набор (@Suite) и настроить свой arquillian контейнер в @BeforeClass аннотированный метод в

см http://www.mkyong.com/unittest/junit-4-tutorial-5-suite-test/

Edit:

И если весь ваш класс направить AbstractTestClass, которые заявляют о @BeforeClass аннотированный метод, который инициализирует контейнер только в том случае, если он еще не выполнен?

+0

спасибо, но это не работает таким образом, как набор тестов требует @RunWith (Suite.class), а arquillian требует @RunWith (Arquillian.class) – mmohab

+0

@mmohab см Edit – Gab

+0

эй Габ, arquillian не использует @BeforeClass (), чтобы создать развертывание, вместо этого он имеет @Deployment(), попытался использовать его в классе Suite, но тестовые примеры не выполнялись. – mmohab

1

Вы используете встроенный экземпляр из стеклянной рыбы? Поскольку запуск удаленного экземпляра должен работать быстрее.

+0

да я использую встроенную стеклянную рыбку, единственный тестовый класс, который содержит около 4 тестовых примеров, занимает более 1 минут для запуска. – mmohab

+0

Я думаю, что даже если я использую удаленный экземпляр, тест все равно будет медленным. Создание военного архива для каждого тестового примера и его развертывание происходит медленно. Мне нужно упаковать несколько тестовых примеров в один архив и запустить их один раз. – mmohab

4

Arquillian не поддерживает апартаменты самостоятельно.

Но я написал расширение, которое делает возможным тестирование вариантов.

https://github.com/ingwarsw/arquillian-suite-extension

Там вы должны найти документацию с примерами.

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