Учебники

TestNG — Обзор

Тестирование — это процесс проверки функциональности приложения, чтобы убедиться, что оно работает в соответствии с требованиями. Модульное тестирование проявляется на уровне разработчика, где принимаются адекватные меры для тестирования каждого отдельного объекта (класса или метода), чтобы убедиться, что конечный продукт соответствует требованиям.

JUnit побудил разработчиков понять полезность тестов, особенно модульных, по сравнению с любой другой средой тестирования. Используя довольно простую, прагматичную и строгую архитектуру, JUnit смог «заразить» множество разработчиков. Загляните в наш учебник по JUnit, чтобы лучше понять его возможности. У JUnit, в то же время, есть и некоторые недостатки, которые перечислены ниже —

  • Изначально предназначенный только для модульного тестирования, теперь используется для всех видов тестирования.

  • Невозможно выполнить тестирование зависимостей.

  • Плохое управление конфигурацией (setUp / tearDown).

  • Навязчиво (заставляет вас расширять классы и называть ваши методы определенным образом).

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

  • Управление различными наборами тестов в сложных проектах может быть очень сложным.

Изначально предназначенный только для модульного тестирования, теперь используется для всех видов тестирования.

Невозможно выполнить тестирование зависимостей.

Плохое управление конфигурацией (setUp / tearDown).

Навязчиво (заставляет вас расширять классы и называть ваши методы определенным образом).

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

Управление различными наборами тестов в сложных проектах может быть очень сложным.

Что такое TestNG?

Определение TestNG согласно его документации следующее:

TestNG — это среда тестирования, вдохновленная JUnit и NUnit, но представляющая некоторые новые функциональные возможности, которые делают ее более мощной и простой в использовании.

TestNG — это система автоматического тестирования с открытым исходным кодом; где NG означает N ext G. TestNG похож на JUnit (особенно JUnit 4), но это не расширение JUnit. Он вдохновлен JUnit. Он разработан, чтобы быть лучше, чем JUnit, особенно при тестировании интегрированных классов. Создатель TestNG — Седрик Беуст .

Устраняя большинство ограничений старой платформы, TestNG дает разработчику возможность создавать более гибкие и мощные тесты. Поскольку он в значительной степени заимствует из Java-аннотаций (представленных в JDK 5.0) для определения тестов, он также может показать вам, как использовать эту новую функцию языка Java в реальной производственной среде.

Поддерживает аннотации.

TestNG использует больше возможностей Java и OO.

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

Разделяет тестовый код времени компиляции и информацию о конфигурации / данных времени выполнения.

Гибкая конфигурация во время выполнения.

Представляет «тестовые группы». После того, как вы скомпилировали свои тесты, вы можете просто попросить TestNG запустить все тесты «front-end» или «fast», «slow», «database» и т. Д.

Поддержка зависимых методов тестирования, параллельного тестирования, нагрузочного тестирования и частичного отказа.

Гибкий плагин API.

Поддержка многопоточного тестирования.