Лучший способ создать автоматизированное тестирование в среде Java - PullRequest
3 голосов
/ 28 сентября 2011

Мне было поручено найти лучший способ сделать комплексное модульное тестирование.У нас очень большое приложение Java EE 5 (для настольных компьютеров).Прямо сейчас мы используем инструмент под названием QF-TEST , который довольно громоздок для больших тестов и может быть сложен в использовании (легко ломается) при любых изменениях кода.

Теперь мы хотим сделатьчто-то более стандартное и дает разработчикам больше контроля.

Я прочитал несколько постов здесь:

Модульное тестирование в среде Java EE

Автоматизированное тестирование - классно, хотя и для .Net

Лучшая практика для автоматизированного тестирования

Самый простой инструмент автоматизированного тестирования на Java

Из общей информации, которую я прочитал, JUnit / JUnitEE, вероятно, лучший (лучше всего я имею в виду самый быстрый для изучения и, возможно, стандарт JAVA).

Является ли JUnit подходом?для больших приложений Java EE?Какие еще варианты лучше других (если они есть)?

Спасибо!

Ответы [ 3 ]

3 голосов
/ 28 сентября 2011

Это очень широкий вопрос.Это тема многих книг.Начните с JUnit, начните читать о тестируемом проектировании / разработке (TDD) и постройте оттуда.Задавайте более конкретные вопросы по мере их появления.Вы можете начать с «Test Infected» , довольно старой, но все еще применимой статьи на сайте JUnit.

2 голосов
/ 28 сентября 2011

Я думаю, что для Java, я бы пошел с junit или testNG фреймворками. Если у вас есть постоянство / база данных, вовлеченная в приложение, я бы добавил dbUnit к миксу.

Если у вас есть сценарии сборки, такие как maven или ant или gradle , я бы также предложил вам заглянуть Jenkins и аналогичные инструменты для автоматизации сборок.

Я предлагаю maven, поскольку он имеет событий жизненного цикла для тестирования, вы можете добавлять цели с помощью ant, я не использовал gradleно если бы мне дали выбор, я бы выбрал gradle

0 голосов
/ 30 сентября 2011

JUnit - это не то, что нужно для больших приложений Java EE, это минимум.

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

При этом вы должны изучить jUnit4 как можно скорее (это можно сделать за 60 секунд) и чем узнать про TDD (это можно сделать за 2-3 часа) и используйте jUnit для каждого будущего изменения кода, которое вы вносите в свое приложение.

Что касается кода, который у вас уже есть, вам нужны «анализаторы кода». Это означает, что инструменты будут проверять ваш исходный код на наличие нарушенных стандартов кодирования, дублирования кода, выполнять покрытие кода, анализ зависимостей и мониторинг сложности. (Все они и многое другое существуют в виде плагинов Eclipse)

Возможно, вам также понадобится некоторый фреймворк для тестирования Java-интерфейса (вместо QF-TEST). Там есть много альтернатив с открытым исходным кодом, поиск в Интернете.

...