selenium assertion examples practical applications projects
У цьому посібнику ми обговоримо, як використовувати твердження в різних сценаріях проекту в режимі реального часу:
- Щоб перевірити, чи видно якийсь об’єкт (кнопка, посилання, попередження).
- Щоб перевірити наявність тексту чи значення.
- Щоб перевірити, чи встановлено / знято прапорець або перемикач.
- Щоб перевірити, чи можна редагувати об’єкт.
=> Ознайомтесь з Ідеальним навчальним посібником із селену тут.
Що ви дізнаєтесь:
Використання тверджень - відеоурок
Твердження Практичні приклади
Ми б обробляли ці сценарії за допомогою таких функцій, як:
- isDisplayed () - Це використовується для перевірки наявності елемента на веб-сторінці. Він повертає справжнє значення, якщо елемент присутній.
- isSelected () -Цей метод визначає, вибраний елемент чи ні. Він повертає true, якщо елемент вибрано, і false, якщо його немає. Він широко використовується на прапорцях, перемикачах та опціях у вибраному.
- isEnabled () - Це використовується для перевірки того, чи можна редагувати певне текстове поле чи доступне для взаємодії з користувачем. Він повертає істину, якщо користувач може ввести в них дані, в іншому випадку, якщо його вимкнено, повертає помилкове значення.
Клацніть тут для зразків тестових кейсів для веб-сайту irctc.
# 1) Щоб перевірити, чи видно об’єкт:
Для того, щоб перевірити наявність об'єкта, ми можемо використовувати isDisplayed () для визначення його стану.
@Test public void verifyLogo() { WebDriver driver = new FirefoxDriver(); driver.get(“https://www.irctc.co.in”); WebElement IrctcLogo = driver.findElement(By.Id(“irctclogo”)); Assert.assertEquals(true, IrctcLogo.isDisplayed()); System.out.println(“IRCTC logo is displayed – Assert passed”); }
Тут IrctcLogo - це WebElement, і він стверджує, чи відображається цей елемент.
AssertEquals перевіряє рівність як очікуваного, так і фактичного значення. У цьому випадку це логічне значення (істина).
Очікуване значення: правда
Фактичне значення: IrctcLogo.isDisplayed () - повертає T / F в залежності від наявності на веб-сторінці.
Те саме можна перевірити за допомогою AssertTrue (IrctcLogo.isDisplayed ());
Тут він стверджує, що істинний логічний стан, тобто IrctcLogo.isDisplayed (), має бути True.
Питання та відповіді співбесіди аналітика бізнес-систем
# 2) Щоб перевірити, чи присутній текст або значення:
Для того, щоб перевірити наявність певного тексту / значення, ми можемо отримати текст елемента з вихідного коду HTML за допомогою методу getText () і порівняти його із очікуваним рядком.
@Test public void verifyLogo() { WebDriver driver = new FirefoxDriver(); driver.get(“https://www.irctc.co.in”); WebElement IrctcLogo = driver.findElement(By.Id(“irctclogo”)); String ExpectedText = “IRCTC railways”; Assert.assertEquals(ExpectedText, IrctcLogo.getText()); System.out.println(“IRCTC text is a expected – Assert passed”); }
Тут IrctcLogo є веб-елементом, і він стверджує, що ці елементи містять текст, що відображається як „залізниці IRCTC”.
AssertEquals перевіряє рівність як очікуваного, так і фактичного значення. У цьому випадку це строкове значення (залізниці IRCTC)
Очікуване значення: Залізниці IRCTC
Фактичне значення: IrctcLogo.getText () - повертає текст елемента - IrctcLogo з веб-сторінки
# 3) Щоб перевірити, чи встановлено / знято прапорець або перемикач
Щоб перевірити статус прапорця, ми можемо використовувати isSelected (), щоб зрозуміти його стан.
Зразок HTML-сторінки: (sample.html)
Sample Page
Milk
Butter
Cheese
Water
Juice
Ice
Радіокнопка - Вибране:
@Test public void verifyElementSelection() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\sample.html'); WebElement Butter = driver.findElement(By.Id(“Butter”)); Butter.click(); //clicks on the radio button of Butter Assert.assertEquals(true, Butter.isSelected()); //Verifies that the radio button is selected after action System.out.println(“Radio button is selected – Assert passed”); }
Тут Баттер посилається на перемикач WebElement і він стверджує, що елемент вибрано. AssertEquals перевіряє рівність як очікуваного, так і фактичного значення. У цьому випадку він стверджує булеве значення (істина)
Очікуване значення: правда
Фактичне значення: Butter.isSelected () - повертає значення true / false залежно від того, вибрано перемикач чи ні.
Те саме можна перевірити за допомогою AssertTrue (Butter.isSelected ());
Тут він стверджує, що істинний логічний стан, тобто Butter.isSelected (), має бути True.
Кнопка радіо - Не вибрано:
@Test public void verifyElementSelection() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\sample.html'); WebElement Milk = driver.findElement(By.Id(“Milk”)); //Verifies that the radio button is not selected Assert.assertEquals(false, Milk.isSelected()); System.out.println(“Radio button is not selected – Assert passed”); }
Assert.assertEquals (false, Milk.isSelected ()); На відміну від цього, для затвердження, якщо перемикач не вибрано, ми можемо використовувати assert для значення False return.
який найкращий додаток для віртуальної реальності
Те саме можна перевірити за допомогою Assert.assertEquals (false, Milk.isSelected ());
Тут він стверджує, що помилковий логічний стан, тобто Milk.isSelected (), є хибним.
Те саме можна використовувати і для перевірки прапорців.
Прапорець - Вибрано:
@Test public void verifyElementSelection() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\sample.html'); WebElement Juice = driver.findElement(By.Id(“Juice”)); Juice.click(); //clicks on the radio button of Juice Assert.assertEquals(true, Juice.isSelected()); //Verifies that the checkbox is selected after action System.out.println(“Checkbox is selected – Assert passed”); }
Тут, Juice до прапорця WebElement, і він стверджує, якщо елемент вибрано.
AssertEquals перевіряє рівність як очікуваного, так і фактичного значення. У цьому випадку він затверджує булеве значення (істина).
Очікуване значення: правда
Фактичне значення: Juice.isSelected () - повертає значення true / false залежно від того, вибрано перемикач чи ні.
Те саме можна перевірити за допомогою Assert.assertEquals (true, Juice.isSelected ())
Тут він стверджує, що істинний логічний стан, тобто Juice.isSelected (), має бути True.
CheckBox - Не вибрано:
@Test public void verifyElementSelection() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\sample.html'); WebElement Water = driver.findElement(By.Id(“Water”)); Water.click(); //clicks on the radio button of Juice Assert.assertEquals(true, Water.isSelected()); //Verifies that the checkbox is selected after action System.out.println(“Checkbox is selected – Assert passed”); }
Assert.assertEquals (false, Water.isSelected ()); На відміну від цього, для затвердження, якщо прапорець не встановлений, ми можемо використовувати assert для значення False return.
Те саме можна перевірити за допомогою Assert.assertEquals (false, Water.isSelected ());
Тут він стверджує, що хибний логічний стан, тобто Water.isSelected (), є хибним.
# 4) Щоб перевірити, чи можна редагувати об’єкт
Це використовується для перевірки доступності елемента для взаємодії. Для перевірки ми можемо використовувати метод isEnabled (). Цей метод можна використовувати для будь-якого WebElement, наприклад, текстового поля, перемикача, кнопки, спадного меню тощо.
програмне забезпечення для завантаження відео з YouTube безкоштовно завантажити -
Зразок сторінки: (login.html)
Username Password Login Remember me Cancel Forgot password?
Перевірте, чи ввімкнено елемент:
@Test public void verifyElementEditable() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\login.html'); WebElement Password = driver.findElement(By.Name(“passwordtext”)); Assert.assertEquals(true, Username.isEnabled()); //Verifies that the textbox elementis enabled System.out.println(“Element is enabled – Assert passed”); }
Тут Пароль є веб-елементом текстового поля, і він стверджує, якщо цей елемент не вимкнено.
AssertEquals перевіряє рівність як очікуваного, так і фактичного значення. У цьому випадку це логічне значення (істина)
Очікуване значення: правда
Фактичне значення: Username.isEnabled () - повертає T / F залежно від того, чи доступне текстове поле для редагування / введення.
Те саме можна перевірити за допомогою Assert.assertEquals (true, Username.isEnabled ())
Тут він стверджує, що істинним булевим умовою, тобто Username.isEnabled (), є True.
Переконайтеся, що елемент вимкнено:
@Test public void verifyElementEditable() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\login.html'); WebElement RememberMe = driver.findElement(By.Name(“rememberMe”)); Assert.assertEquals(false, RememberMe.isEnabled()); //Verifies that element is disabled System.out.println(“Element is Disbaled – Assert passed”); }
Тут RememberMe - це веб-елемент текстового поля, і він стверджує, якщо цей елемент не вимкнено.
AssertEquals перевіряє рівність як очікуваного, так і фактичного значення. У цьому випадку це логічне значення (false).
Очікуване значення: помилковий
Фактичне значення: RememberMe.isEnabled () - повертає T / F в залежності від того, доступний елемент для взаємодії / ввімкнено.
Те саме можна перевірити за допомогою Assert.assertEquals (false, RememberMe.isEnabled ()).
Тут він стверджує, що помилковий логічний стан, тобто RememberMe.isEnabled (), є False.
Перевірка в сценаріях
Verify - це клас, який використовується для порівняння очікуваних та фактичних результатів тестування, як це робить клас утвердження, але коли він не вдається, це не зупинить виконання тесту, він продовжує запускати тестові випадки. У веб-драйвері Selenium це досягається за допомогою Soft Assertion.
Перевірка елементів у веб-драйвері Selenium
1. Кілька команд для перевірки, доступних в Selenium IDE та Selenium RC, є
- verifyTextPresent / verifyTextNotPresent
- verifyElementPresent / verifyElementNotPresent
два. Тож у веб-драйвері Selenium, якщо ми хочемо перевірити результати без припинення роботи сценарію, використовуйте Soft Assertion. Або
3. Ми можемо використовувати команди веб-драйвера Selenium. Зверніться до коду, який перевірить
- Текст погоди присутній чи ні
- Елемент погоди присутній чи ні
package com.wordpress.pages; import java.util.List; import org.junit.Assert; import org.junit.Test; import org.openqa.selenium.By; import org.openqa.selenium.Web Driver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; public class LearnAssertion { static Web Driver driver; @Test public void Test(){ System.setProperty('Web Driver.chrome.driver', 'D:\New folder\exe\chromedriver.exe'); driver = new ChromeDriver(); driver.get('https://www.ksrtc.in/oprs-web/'); //Verify Title of the Site String Expected_Title ='KSRTC Official Website for Online Bus Ticket Booking - KSRTC.in'; String Actual_Title = driver.getTitle(); Assert.assertEquals(Expected_Title, Actual_Title); //Verify Text or the element 'Home' 'PNR Enquiry' 'Cancel Tickets' 'KSTDC Package Tours' 'About Us' //'Contact US' is present of the Site List Tab = driver.findElements(By.xpath('//div(@class='menu')//a')); for(int i=1;i<=Tab.size();i++){ WebElementTab_Name=driver.findElement(By.xpath('(//div(@class='menu')//a)('+i+')')); Tab_Name.isDisplayed(); String Tab_Value = Tab_Name.getText(); System.out.println(Tab_Value); if(Tab_Value.equalsIgnoreCase('HOME')){ System.out.println('HOME tab is present'); break; } else {System.out.println('HOME tab is not present'); } } }}
Коли використовувати команди активів / перевірити команди
1. Використовуйте команди Assert, щоб переконатись, що ваш тест працює у правильному напрямку, це означає, що завантажена правильна конфігурація користувача, завантажена права сторінка чи завантажено правильне середовище тощо.
два. Використовуйте команди 'Перевірити', щоб порівняти результати тесту з вихідними значеннями, наприклад, увійшовши на неправильну сторінку, і незалежно від того, яку перевірку ви зробите, вона не вдасться
3. Логічно згрупуйте свої тестові команди і почніть кожну групу з «затверджувати» та «перевіряти» вміст
Висновок
Як обговорювалося вище, ми бачили різні практичні застосування методів твердження, які можуть бути використані для перевірки тестового випадку. Таким чином, твердження допомагають нам у перевірці тестового випадку та гарантують, чи має тест статус «Пройдено» чи «Не виконано».
=> Перегляньте тут, щоб побачити A-Z навчальних посібників із селену тут.
Рекомендована література
- Знайти елемент селену за текстовим посібником із прикладами
- 30+ найкращих підручників із селену: вивчіть селен на реальних прикладах
- Управління ключовими словами в селені з прикладами
- Підручник із селену GeckoDriver: Як використовувати GeckoDriver у проектах селену
- Локатори селену: виявлення веб-елементів за допомогою XPath у селені (приклади)
- Дослідіть основи Java в селені на прикладах
- Дізнайтеся, як використовувати анотації TestNG у селені (з прикладами)
- Посібник з тестування на портативність із практичними прикладами