Selenium WebDriver е най-важният компонент на пакета на Selenium Tool. Най-новата версия 'Selenium 2.0' е интегрирана с WebDriver API, който осигурява по-прост и по-сбит интерфейс за програмиране.
как да разбера размера на моя монитор
Следното изображение ще ви даде добро разбиране на компонентите на Selenium и инструментите за автоматизиране на тестовете.
Selenium WebDriver беше представен за първи път като част от Selenium v2.0. Първоначалната версия на Selenium, т.е. Selenium v1, се състоеше само от IDE, RC и Grid. Въпреки това, с пускането на Selenium v3, RC беше отхвърлен и преместен в наследен пакет.
В WebDriver тестовите скриптове могат да бъдат разработени с помощта на всеки от поддържаните езици за програмиране и могат да се изпълняват директно в повечето съвременни уеб браузъри. Езиците, поддържани от WebDriver, включват C#, Java, Perl, PHP, Python и Ruby.
Преди да научите концепциите на Selenium WebDriver, трябва да сте добре запознати с някой от поддържаните езици за програмиране. В момента Selenium Web драйверът е най-популярен с Java и C#. За този урок използваме Selenium с java. Можете да се обърнете към връзките, дадени по-долу, за да научите основни, както и напреднали концепции за Java и C#:
Урок за Java: https://www.javatpoint.com/java-tutorial
C# Урок: https://www.javatpoint.com/c-sharp-tutorial
Selenium WebDriver работи много по-бързо в сравнение със Selenium RC, защото прави директни повиквания към уеб браузърите. RC от друга страна се нуждае от RC сървър, за да взаимодейства с браузъра.
WebDriver има вградена реализация на драйвера за Firefox (Gecko Driver). За други браузъри трябва да включите техните специфични драйвери за браузъра, за да комуникират и изпълнят теста. Най-често използваните WebDriver включват:
- Драйвер за Google Chrome
- Драйвер за Internet Explorer
- Драйвер за Opera
- Safari драйвер
- Драйвер за HTML модул (специален драйвер без глава)
Selenium WebDriver - Архитектура
Selenium WebDriver API предоставя средство за комуникация между езици и браузъри.
Следното изображение показва архитектурното представяне на Selenium WebDriver.
Има четири основни компонента на WebDriver Architecture:
- Езикови обвързвания на Selenium
- JSON кабелен протокол
- Драйвери за браузър
- Истински браузъри
Selenium езикови обвързвания / Selenium клиентски библиотеки
Разработчиците на Selenium са изградили езикови обвързвания/клиентски библиотеки Selenium, за да поддържат множество езици. Например, ако искате да използвате драйвера на браузъра в java, използвайте обвързванията на java. Всички поддържани езикови връзки могат да бъдат изтеглени от официалния уебсайт (https://www.seleniumhq.org/download/#client-drivers) на селен.
JSON кабелен протокол
JSON (JavaScript Object Notation) е отворен стандарт за обмен на данни в мрежата. Той поддържа структури от данни като обект и масив. Така че е лесно да се записват и четат данни от JSON. За да научите повече за JSON, посетете https://www.javatpoint.com/json-tutorial
JSON Wire Protocol осигурява транспортен механизъм за прехвърляне на данни между сървър и клиент. JSON Wire Protocol служи като индустриален стандарт за различни REST уеб услуги. За да научите повече за уеб услугите, посетете https://www.javatpoint.com/web-services-tutorial
Драйвери за браузър
Selenium използва драйвери, специфични за всеки браузър, за да установи защитена връзка с браузъра, без да разкрива вътрешната логика на функционалността на браузъра. Драйверът на браузъра също е специфичен за езика, използван за автоматизация, като Java, C# и др.
Когато изпълняваме тестов скрипт с помощта на WebDriver, следните операции се извършват вътрешно.
- HTTP заявката се генерира и изпраща към драйвера на браузъра за всяка Selenium команда.
- Драйверът получава HTTP заявката чрез HTTP сървър.
- HTTP сървърът решава всички стъпки за изпълнение на инструкции, които се изпълняват в браузъра.
- Състоянието на изпълнение се изпраща обратно към HTTP сървъра, който впоследствие се изпраща обратно към скрипта за автоматизация.
Браузъри
Браузъри, поддържани от Selenium WebDriver:
- Internet Explorer
- Mozilla Firefox
- Google Chrome
- Safari
Selenium WebDriver - функции
Някои от най-важните характеристики на Selenium WebDriver са:
Драйвер за уебдрайвер = нов FirefoxDriver(); (браузър Firefox)
Драйвер за уебдрайвер = нов ChromeDriver(); (браузър Chrome)
Драйвер за уебдрайвер = нов InternetExplorerDriver(); (браузър Internet Explorer)
WebDriver също така позволява на тестерите да се справят със сложни видове уеб елементи като квадратчета за отметка, падащи менюта и предупреждения чрез динамични търсачки.
Индекс на уроци за Selenium WebDriver
Урок за Selenium WebDriver
- Урок за Selenium WebDriver
- WebDriver срещу RC
- Инсталиране на WebDriver
- Първи тестов случай на WebDriver
- Команди на WebDriver
- Изпълнява се тест в Chrome
- Изпълнение на тест на Firefox
- Изпълнение на тест в IE
- Изпълнение на тест в Safari
- Стратегии за локализиране
- Намиране на стратегии по ID
- Намиране на стратегии по име
- Намиране на стратегии по име на клас
- Намиране на стратегии по име на етикет
- Намиране на стратегии чрез текст на връзката
- Намиране на стратегии чрез частичен текст на връзката
- Намиране на стратегии чрез CSS
- Намиране на стратегии от XPath
- Работа с падащи менюта
- WebDriver-Плъзнете и пуснете
- Сигнали за обработка на WebDriver
- Превъртане на уеб страница
- WebDriver - Команди на браузъра
- WebDriver - Команди за навигация
- WebDriver - WebElement команди
- Работа с радио бутони
- Отметка за обработка
- Селенови твърдения
- Селенова решетка