selenium 4 new features
У цьому огляді перелічено відмінності між Selenium 3 та Selenium 4 та новими функціями та змінами в останній версії Selenium 4 (Alpha 3):
Зараз на ринку випущена версія Selenium 4 (Alpha 3). Як ми всі знаємо, засновником Selenium є 'Саймон Стюарт', і тепер він представив нову версію не тільки для веб-драйверів, але і для Grid та IDE.
Селен 4 прийняв стандартний протокол веб-драйверів W3C. Усі браузери, такі як Google Chrome, Safari, Internet Explorer, Edge та багато інших, також відповідають стандарту W3C, завдяки чому взаємодія між драйвером браузера та веб-драйвером Selenium тепер буде базуватися на стандартному протоколі веб-драйверів W3C.
Що ви дізнаєтесь:
Огляд селену 4
Зміни, пов'язані зі стандартами W3C, внесені для вдосконалення версії, оскільки попередні команди Selenium працювали дуже по-різному в різних браузерах.
Примітка : Версія Selenium 4 Alpha випущена в квітні 2019 року.
Завантажте Версія Селен 4 Альфа натиснувши на “4.0.0-alpha-6”, як показано на малюнку нижче:
Бібліотеки останньої версії присутні в Центральному сховищі Maven.
Рекомендована література => Віддалений драйвер селену
Різниця між селеном 3 та селеном 4
Селен 3 | Селен 4 |
---|---|
Взаємодія браузера базується на дротовому протоколі JSON, завдяки чому йому потрібне кодування та декодування API | Він слідує стандартному протоколу W3C, завдяки якому зв’язок драйвера та браузера виконує стандартну процедуру, не вимагає кодування та декодування API, тому зв’язок відбувається безпосередньо. |
Важливі зміни, пов'язані з архітектурою
# 1) Підтримка, вилучена для деяких браузерів: Тепер вони видалили підтримку для браузерів Opera та Phantom JS. Користувачі Opera можуть використовувати браузер Chrome, тоді як користувачі Phantom JS можуть використовувати Chrome або Firefox у безголовому режимі.
# 2) Оптимізована селенова сітка: Селенова сітка була розроблена давно в 2011 році.
Selenium 4 придумав нову архітектуру, щоб усунути проблеми, які виникали раніше під час встановлення та конфігурації, а також під час з'єднання між концентратором і машиною вузлів.
Давайте коротко розберемося у сітці селену, яка містить два основних компоненти:
- Вузол: Застосовується для виконання тестів на окремих комп’ютерних системах. У сітці може бути кілька вузлів.
- Концентратор: Це центральний пункт, звідки він контролює всі машини, присутні в мережі, і містить лише один концентратор, який допомагає розподіляти виконання тесту між різними вузлами.
Але в Selenium 4 Grid дуже гнучкий. Це дозволяє нам перевірити справи на декількох браузерах, браузерах різних версій, а також на різних операційних системах. Навіть зараз немає необхідності в установці для запуску концентратора та вузлів окремо, як тільки користувач запускає сервер, сітка автоматично працює як як вузли, так і як концентратор.
Він також підтримує розширені інструменти, такі як Docker, AWS, Azure та багато іншого, корисного в процесі DevOps. Тепер Grid має більш зручний користувальницький інтерфейс і містить відповідну інформацію, що стосується сеансу, роботи, потужності тощо.
>> Клацніть тут для отримання додаткової інформації.
# 3) Стандартизована документація: Документи відіграють важливу роль для будь-якого користувача, і документи Selenium не оновлювались з Selenium 2.0.
За допомогою Selenium 4 вони оновили всі офіційні документи, що стосуються Selenium, включаючи веб-драйвер, Grid та IDE, щоб пояснити останні зміни.
# 4) Удосконалення IDE в селені 4: Selenium IDE - це інструмент запису та відтворення, який використовується для взаємодії користувача з браузером, а нова версія IDE доступна з додатковими функціями
Ці особливості включають:
- Це покращує підтримку браузера. Тепер з новою версією будь-який постачальник браузерів може легко підключитися до останньої IDE Selenium.
- CLI Runner базуватиметься на NodeJS, а не на HTML-базі, і він підтримує паралельне виконання, з якого надає звіт із загальною кількістю пройдених / невдалих тестових випадків разом із зайнятим часом виконання.
# 5) Кращий моніторинг: Процес реєстрації та відстеження запитів тепер вдосконалено, щоб краще зрозуміти процес налагодження для інженерів-автоматиків, оскільки він не обмежується лише DevOps.
Особливості селену 4
Особливості:
# 1) Зробіть знімок екрана певного веб-елемента:
Раніше користувачі могли зробити знімок екрана всієї сторінки, оскільки не було можливості зробити знімок екрана конкретного веб-елемента. Але з Selenium 4 користувачі можуть зробити знімок екрана певного веб-елемента.
Знайдіть код нижче:
WebElement logo=driver.Findelement (By.xpath(“//div(@id=’divLogo’)//img”)); File file=logo.getScreenshotAs(OutputType.FILE); File destFile =new File(“logo.png”); FileUtils.copyFile(file,destfile);
# 2) Відкрийте нову вкладку в браузері:
Тепер у Selenium 4 користувач може відкрити URL-адресу на новій вкладці разом із наявною.
Наприклад: Якщо користувач хоче одночасно відкрити 2 URL-адреси на двох різних вкладках, користувач може зробити це за допомогою Selenium 4.
Будь ласка, знайдіть наведений нижче код для довідки:
driver.get(https://www.google.com/); driver.switchTo().newWindow(WindowType.TAB); driver.navigate().to(https://www.crmpro.com/);
# 3) Відкрийте нове вікно у браузері:
Використовуючи Selenium 4, користувачі можуть також відкрити нове вікно в тому ж браузері.
Наприклад, якщо користувач хоче отримати доступ до двох програм в одному браузері, тепер користувач може це зробити.
Будь ласка, знайдіть наведений нижче код для довідки:
driver.get(https://www.google.com/); driver.switchTo().newWindow(WindowType.WINDOW); driver.navigate().to(https://www.crmpro.com/);
# 4) Розташування об’єкта:
Тепер із Selenium 4 користувачі можуть отримувати координати, розміри, висоту, ширину тощо як розташування веб-елементів або об’єкта.
Будь ласка, знайдіть наведений нижче код для довідки:
WebElement logo1=driver.Findelement(By.xpath(“//div(@id=’divLogo’)//img”)); System.out.println(“Height:” +logo.getRect().getDimension().getHeight()); System.out.println(“Height:” +logo.getRect().getDimension().getWidth()); System.out.println(“X Location: “ +Logo.getRect().getX()); System.out.println(“Y Location: “ +Logo.getRect().getY());
# 5) Відносні локатори:
Вони також відомі як Friendly Locators, і ця функція додається, щоб з’ясувати елемент, який знаходиться поруч з іншим веб-елементом, або, можна сказати, він може знайти веб-елементи на основі розташування графічного інтерфейсу.
У Selenium 4 додано п’ять локаторів:
різниця між c ++ та java - -
- внизу (): Веб-елемент, розташований нижче для вказаного елемента.
- toLeftOf (): Цільовий веб-елемент, який знаходиться зліва від зазначеного елемента.
- toRightOf (): Цільовий веб-елемент, який представлений праворуч від зазначеного елемента.
- вгорі (): Веб-елемент, розташований вище для вказаного елемента.
- близько() : Цільовий веб-елемент, який знаходиться подалі (приблизно 50 пікселів) від зазначеного елемента.
Примітка: Усі вищезазначені методи відносних локаторів підтримують метод “withTagName”.
Наведений нижче приклад стосується локаторів toLeftof () та нижче ():
WebElement book; book = driver.Findelement(RelativeLocators.withTagName(“li”).toLeftOf(By.id(“pid1”)) .below(By.id(“pid2”))); String id1=book.getAttribute (“id1”);
Наведений нижче приклад стосується локаторів toRightOf () та вище ():
WebElement book1; book1 = driver.Findelement(RelativeLocators.withTagName(“li”).toRightOf(By.id(“pid1”)) .above(By.id(“pid2”))); String id2=book1.getAttribute (“id2”);
# 6) Інструменти Chrome Dev:
У новій версії Selenium вони внесли деякі внутрішні зміни в API. Раніше в Selenium 3 драйвер Chrome поширюється безпосередньо на клас Remote Web Driver. Але тепер у Selenium 4 клас драйверів Chrome поширюється на драйвер Chromium. Клас драйвера Chromium має кілька заздалегідь визначених методів доступу до інструменту розробника.
Примітка: Chromium Driver розширює клас віддаленого веб-драйвера.
Використовуючи API, ми можемо виконувати такі операції:
- Увімкнути мережу офлайн
- Увімкніть Network Online
- Отримати журнали консолі
- Завантажте веб-сайт страхування
Висновок
У цьому підручнику ми розглянули вступ до нової версії Selenium 4, деякі майбутні функції, пов’язані з Selenium Grid, IDE та Selenium WebDriver.
Ми також бачили короткий опис відносних локаторів, інструментів розробника Chrome. Ми можемо чекати багато чого від Selenium 4, будь то підтримка браузера, документація чи інтерфейс.
Автор: Ця стаття написана Akanksha K, яка має 7+ років досвіду в галузі якості програмного забезпечення та побудови тестових платформ.
Рекомендована література
- 30+ найкращих підручників із селену: вивчіть селен на реальних прикладах
- Встановлення та завантаження Selenium IDE та введення основних функцій
- Вступ до Selenium WebDriver - Підручник з селену №8
- Підручник із селену ChromeDriver: Тести веб-драйверів на селен у Chrome
- Як використовувати Firebug для створення сценаріїв селену - Підручник селену No4
- Підручник із селену PhantomJS з автоматизації без голови
- Дії селену: обробляйте подвійне клацання та клацання правою кнопкою миші в селені
- Локатори селену: виявлення веб-елементів за допомогою XPath у селені (приклади)