Закончился предыдущий проект и начался новый. Задача минимум: автоматизировать тестирование консольного приложения, которое является интерфейсом к фреймворку.
Решили использовать Java как базу для работу. Будем запускать консольное приложение и проверять фалы, базы, немного UI, вообщем все. И потому будем использовать для проверки приложений, написанных на базе этого фреймворка. За основу решили взять не jUnit, а TestNG. Почему? За очень полезную штуку по заданию порядка тестов. А порядок для экономии времени оочень важен. Шутка ли каждый небольшой тест разворачивать новую чистую инфраструктуру.
Почитал немного. Написал несколько примитивных тестов. Назвал test1 и test2. Запустил. Сначала прошел test1, потом test2. Отлично. А что тут с порядком? Оказывается TestNg использует специальный конфигурационный xml-файл. В примерах и у меня он testing.xml. Хотя это не так и важно. Главное преподнести его как конфигурационный проекту.
Создал, в том же месте, где и лежит тестовый единственный класс. Запускаем - ничего. Хмм. Нет потяно, что само по себе мало, что работает.
Порядок вот такой получается:
Итак я пользую IDEA. Для того чтобы наш проект воспринимал testing.xml мы его создаем и прописываем туда, например, следующее.
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="TestNG Test Suite" verbose="1">
<test name="Test order verification" preserve-order="true">
<classes>
<class name="Test1">
<methods>
<include name="test2" />
<include name="test1" />
</methods>
</class>
<class name="Test2">
<methods>
<include name="test4" />
<include name="test3" />
</methods>
</class>
</classes>
</test>
</suite>
Ожидаемый порядок при этом
И в появившемся окне настраиваем, что мы хотим. Такие вот настройки меня вполне устраивают.
После этого появляется дополнительный пункт на панели запуска приложения.
Запускаем и получаем то, что хотели
Буду апдейтить по мере разбирательства
Решили использовать Java как базу для работу. Будем запускать консольное приложение и проверять фалы, базы, немного UI, вообщем все. И потому будем использовать для проверки приложений, написанных на базе этого фреймворка. За основу решили взять не jUnit, а TestNG. Почему? За очень полезную штуку по заданию порядка тестов. А порядок для экономии времени оочень важен. Шутка ли каждый небольшой тест разворачивать новую чистую инфраструктуру.
Почитал немного. Написал несколько примитивных тестов. Назвал test1 и test2. Запустил. Сначала прошел test1, потом test2. Отлично. А что тут с порядком? Оказывается TestNg использует специальный конфигурационный xml-файл. В примерах и у меня он testing.xml. Хотя это не так и важно. Главное преподнести его как конфигурационный проекту.
Создал, в том же месте, где и лежит тестовый единственный класс. Запускаем - ничего. Хмм. Нет потяно, что само по себе мало, что работает.
Порядок вот такой получается:
Итак я пользую IDEA. Для того чтобы наш проект воспринимал testing.xml мы его создаем и прописываем туда, например, следующее.
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="TestNG Test Suite" verbose="1">
<test name="Test order verification" preserve-order="true">
<classes>
<class name="Test1">
<methods>
<include name="test2" />
<include name="test1" />
</methods>
</class>
<class name="Test2">
<methods>
<include name="test4" />
<include name="test3" />
</methods>
</class>
</classes>
</test>
</suite>
Да, у нас соотвественно есть два класс Test1 и Test2. А там методы test1, test2 и test3, test4, соотственно. Которые реализуют что-то типа
@Test(description="3rd test")
public void test4() {
org.testng.Assert.assertFalse(true);
}
Ожидаемый порядок при этом
- test2
- test1
- test4
- test3
И в появившемся окне настраиваем, что мы хотим. Такие вот настройки меня вполне устраивают.
После этого появляется дополнительный пункт на панели запуска приложения.
Запускаем и получаем то, что хотели
Буду апдейтить по мере разбирательства
Комментариев нет:
Отправить комментарий