testng process execution
Този урок обяснява различни типове процеси на изпълнение в TestNG, т.е. изпълнение на партида, контролирана партида, отчет за изпълнение на теста и паралелно изпълнение:
Изпълнението на процеса в TestNG има тенденция да спести до голяма степен времето ви, докато изпълнява тестови скриптове или пакети.
Нека да изследваме !!
=> Посетете тук, за да научите TestNG от нулата.
Какво ще научите:
Защо различни методи за изпълнение на процеса?
Всеки път, когато изпълняваме тестовите скриптове или пакети в средата Java Eclipse, трябва да натиснем бутона Възпроизвеждане за всеки тестов скрипт, който трябва да бъде изпълнен. Това наистина е досаден и отнемащ време процес, ако има много на брой тестови скриптове или пакети.
За да се преодолее този недостатък, TestNG има концепция за групиране и изпълнение на тестовите скриптове или пакети, базирани на различните видове изпълнителни процеси, изброени по-долу.
- Партидно изпълнение
- Контролирано изпълнение на партида
- Отчет за изпълнение на теста
- Паралелно изпълнение
Нека да видим подробно всяко изпълнение на всеки процес.
Партидно изпълнение
- Това е процесът на изпълнение на всички тестови скриптове или пакети в последователен ред.
- Няма нужда от ръчна намеса за стартиране на всеки тестов пакет.
Пример:
Предварителни условия:
- Създайте проект на Selenium WebDriver с име на проекта като TestNg_Demo.
- Инсталирайте приставката TestNG в eclipse.
Създадени са два тестови скрипта (User и UserOperations) с помощта на анотации TestNG и един общ скриптов файл (Base_class), където е записан редът на изпълнение.
Етап 1: User.java
Стъпка 2: UserOperations.java
Стъпка 3: Base_Class.java
Стъпка 4: Изпълнение на тестовите скриптове в Batch, като щракнете с десния бутон върху проекта и изберете Run As TestNG Test.
Стъпка 5: Xml файлът ще бъде генериран в папката test-output с името на файла по подразбиране test.xml.
Стъпка 6: Добавете тестовите методи, които принадлежат към определен тестов скрипт или пакет.
Стъпка 7: Щракнете върху бутона Run и изходът ще се покаже в прозореца на конзолата, както е показано по-долу.
Тестовите скриптове са изпълнени успешно с помощта на групова обработка.
Контролирано изпълнение на партида
Това е процесът на селективно изпълнение на определен модул, който съдържа група тестови пакети или скриптове.
Пример:
колко използваеми хоста са на разположение при даден ip адрес на клас c с маската на подмрежата по подразбиране?
Създаден е модул, наречен UserOperations. Под това имаме трима потребители, наречени Създаване, Редактиране и Изтриване съответно. Тук ще извършим действие, като проверим скрипта CreateUser с помощта на класа Assert. За това задаваме зависимости за Редактиране и изтриване на потребители, като използваме тестовата анотация „dependOnMethods“.
Нека разгледаме как да проверим скриптовете и да видим как се управляват съответните зависими скриптове.
Етап 1: Потребителски операции. Java
Ако скриптът за създаване на потребител е успешно проверен, тогава ще бъдат изпълнени другите скриптове за зависимост. Или в противен случай, скриптовете ще бъдат провалени или дори пропуснати.
Стъпка 2: Добавете методите за тестване на модула UserOperations във файла по подразбиране test.xml.
Стъпка 3: Проверка на тестовите скриптове.
# 1) Ако очакваните и Действителните съобщения са равни.
String expected = “create a user”; String actual = “create a user”; Assert.assertEquals (expected, actual);
Съответният изход ще се покаже в прозореца на конзолата, както е показано по-долу.
# две) Ако очакваните и действителните съобщения не са равни.
String expected = “create a user”; String actual = “creating an user”; Assert.assertEquals (expected, actual);
Съответният изход ще се покаже в прозореца на конзолата.
Тестовите скриптове в определен модул (UserOperations) се изпълняват успешно и се проверяват.
Отчет за изпълнение на теста
- Генерирането на отчети може да се направи с помощта на TestNG, който ни помага да идентифицираме състоянието (преминаване / неуспех / пропускане) на всеки тест метод в група скриптове или пакети.
- Отчетът за теста ще бъде генериран във .html формат.
Пример:
Етап 1: След изпълнение на тестови скриптове, опреснете проекта, като щракнете с десния бутон и изберете опцията Обновяване. Тестово-изходна папка ще се генерира автоматично.
Стъпка 2: Чрез разширяване на папката, под пакета по подразбиране щракнете върху файла test.html по подразбиране.
Стъпка 3: Щракнете с десния бутон и изберете Отворете с => Уеб браузър
Стъпка 4: Ще бъде генериран отчет за изпълнение на теста, показващ цялата информация за тестовите методи в скрипт.
Паралелно изпълнение
- Това е процесът на стартиране на множество тестови скриптове едновременно. Помага ни да спестим усилията си за изпълнение и да покрием максималния брой тестове.
- Също така можем да извършим тестване на различни браузъри, което ще направи приложението по-стабилно.
- TestNG обработва вътрешно концепции за резби, които ще ни позволят да стартираме теста в множество нишки.
Пример:
В TestNG всички методи / класове @Test ще бъдат изпълнени в една и съща нишка. Ако искаме да стартираме нашите методи / класове в отделни нишки, тогава трябва да зададем атрибута “паралелен” за методи / класове във файла по подразбиране test.xml.
Етап 1: Конфигурирайте атрибута „Parallel“ като „методи“ във файла по подразбиране test.xml.
софтуерен пакет, предназначен за автоматизиране на контрола на версиите
Стъпка 2: Parallel_Demo.java
Тук паралелно изпълняваме два метода за тестване. Отпечатваме Thread ID, върху който първо трябва да се изпълни методът на нишката.
Стъпка 3: Щракнете върху бутона Run и изходът ще се покаже в конзолата, както е показано по-долу.
Горният резултат показва двата метода, изпълнени с различни нишки. Нишката, която завършва изпълнението на единия метод, ще избере и изпълни другия метод за тестване.
Заключение
Чрез този урок разбрахме различните процеси на изпълнение на TestNG. Първо, започнахме да създаваме нов проект на Selenium WebDriver, използвайки анотации на TestNG, и преминахме към различни типове процеси на изпълнение и накрая проверихме един от тестовия скрипт с помощта на инструкции Assert.
По този начин изпълнението на многобройни тестови скриптове или пакети с помощта на групова обработка е много по-лесно и наистина спестява и времето ни за изпълнение. Тук внедрихме и изпълнихме процесния поток на всеки вид изпълнение за нашето лесно разбиране.
Честито четене !!
=> Внимавайте тук за простата серия за обучение TestNG.
Препоръчително четене
- 20 Най-популярни въпроси и отговори за интервю за TestNG
- Твърдения в селен с помощта на рамки Junit и TestNG
- Анотации и слушатели на TestNG
- Пример за TestNG: Как да създадете и използвате файла TestNG.xml
- Инсталация на TestNG, основна програма и отчети
- Урок за TestNG: Въведение в TestNG Framework
- Как да стартирате паралелно мащабно изпълнение на тестове на Appium
- Изпълнение на теста при тестване на софтуер: Точен процес и план с пример