selenium locators identify web elements using xpath selenium
Урок за локатори на селен: Научете как да идентифицирате уеб елементи с помощта на XPath в селен с примери
В предишен урок , запознахме ви с друг инструмент за тестване на автоматизация, наречен Firebug. Също така създадохме собствен скрипт за автоматизация ръчно, използвайки Firebug и неговите възможности. Също така се научихме да прикрепваме желани модификации в нашия скрипт.
Продължавайки напред, в този урок ще разгледаме различни видове локатори в Селен и техниките им за достъпност за изграждане на тестови скриптове . По този начин този урок се състои от подробно въведение в различни видове локатори.
Това е наше 5-и урок в урока по Селен серия.
Какво е Локатор?
Локаторът може да бъде наречен като адрес, който идентифицира уеб елемент уникално в рамките на уеб страницата. Локаторите са HTML свойствата на уеб елемент, който казва на Selenium за уеб елемента, от който се нуждае, за да извърши действието.
Съществува разнообразна гама от уеб елементи. Най-често срещаните сред тях са:
- Текстово поле
- Бутон
- Падащо меню
- Хипервръзка
- Поле за отметка
- Радио бутон
Какво ще научите:
- Видове локатори
- Използване на идентификатор като локатор
- Използване на ClassName като локатор
- Използване на име като локатор
- Използване на Текст на връзката като локатор
- Използване на XPath като локатор
- Заключение
- Препоръчително четене
Видове локатори
Идентифицирането на тези елементи винаги е било много сложна тема и следователно изисква точен и ефективен подход. По този начин можем да твърдим, че по-ефективен локатор, по-стабилен ще бъде скриптът за автоматизация. По същество всяка команда на Selenium изисква локатори за намиране на уеб елементите. По този начин, за да идентифицираме тези уеб елементи точно и точно, имаме различни видове локатори.
Сега нека разберем допълнително, като упражняваме всеки от тях независимо.
Преди да започнем с локаторите, позволете ми да отделя малко време, за да представя тестваното приложение. Ще използваме „https://accounts.google.com/“ за намиране на различни типове уеб елементи, използвайки различни типове локатори.
Използване на идентификатор като локатор
Най-добрият и най-популярният метод за идентифициране на уеб елемент е използването на ID. Твърди се, че идентификаторът на всеки елемент е уникален.
В тази извадка бихме получили достъп до текстовото поле „Имейл“, което се намира във формуляра за вход на gmail.com.
Намиране на идентификатор на уеб елемент използване на Firebug
как да приложите графика в java -
Етап 1 : Стартирайте уеб браузъра (Firefox) и отворете „https://accounts.google.com/“.
Стъпка 2 : Отворете firebug (или чрез натискане на F12 или чрез инструменти).
Стъпка 3 : Щракнете върху иконата за проверка, за да идентифицирате уеб елемента.
Стъпка 4 : Задръжте курсора на мишката върху уеб елемента (в нашия случай текстово поле за имейл), върху който искаме да извършим някакво действие. В секцията firebug можете да видите маркираните съответни HTML тагове.
Стъпка 5 : Бъдете наясно с атрибута ID и го отбележете. Сега трябва да проверим дали идентифицираният идентификатор може да намери елемента уникално и безупречно.
Синтаксис : id = id на елемента
В нашия случай идентификаторът е „Имейл“.
Алтернативен подход:
Вместо да следваме стъпки 2 до 4, ние можем директно да намерим / инспектираме уеб елемента, като щракнем с десния бутон върху уеб елемента (Email Textbox), чиято стойност на локатора трябва да проверим и щракнем върху опцията „Inspect Element with Firebug“. По този начин това събитие за кликване задейства разширяването на секцията firebug и съответният HTML таг ще бъде подчертан.
Проверете стойността на локатора
Ако приемем, че браузърът е отворен и е пренасочен към „https://accounts.google.com/“.
Етап 1 : Стартирайте IDE на Selenium.
Стъпка 2 : Щракнете върху първия ред в раздела за редактор.
Стъпка 3 : Въведете „id = Email“, т.е. стойността на локатора в целевото поле.
Стъпка 4 : Щракнете върху бутона Find. Ако предоставената стойност на локатора е легитимна, тогава текстовото поле за имейл ще бъде маркирано с жълт цвят с флуоресцентна зелена граница около полето. Ако предоставената стойност на локатора е неправилна, съобщението за грешка ще бъде отпечатано в прозореца на регистрационния файл в долната част на IDE на Selenium.
Случай 1 - Стойност на локатора = Правилно
Случай 2 - Стойност на локатора = Неправилно
Стъпка 5 : За да провери допълнително, потребителят може също да изпълни команда „type“ срещу дадената цел, като предостави някаква стойност в полето „Value“. Ако изпълнението на командата въведе посочената стойност в текстовото поле Email, което означава, че идентифицираният тип локатор е правилен и достъпен.
Използване на ClassName като локатор
Има само тънка разлика между използването на ID като локатор и използването на името на класа като локатор.
В тази извадка бихме получили достъп до „Нуждаете се от помощ?“ хипервръзка в долната част на формуляра за вход на gmail.com.
Намиране на име на клас на уеб елемент използване на Firebug
Етап 1 : Намерете / проверете уеб елемента (в нашия случай връзка „Нуждаете се от помощ?“), Като щракнете с десния бутон върху уеб елемента, чиято стойност на локатора трябва да проверите и щракнете върху опцията „Проверете елемента с Firebug“.
Стъпка 2 : Бъдете наясно с атрибута на името на класа и го отбележете. Сега трябва да проверим дали идентифицираното име на класа е в състояние да намери елемента уникално и точно.
Синтаксис: class = име на клас на елемента
В нашия случай името на класа е „need-help-reverse“
Проверете стойността на локатора
Етап 1 : Въведете “class = need-help-reverse” в целевото поле в IDE на Selenium.
Стъпка 2 : Щракнете върху бутона Find. Забележете, че хипервръзката ще бъде маркирана с жълт цвят с флуоресцентна зелена граница около полето.
(Щракнете, за да видите увеличеното изображение)
Използване на име като локатор
Намирането на уеб елемент с помощта на името е много аналогично на предишните два типа локатори. Единствената разлика се крие в синтаксиса.
В тази извадка бихме получили достъп до текстовото поле „Парола“, което се намира във формуляра за вход на gmail.com.
Синтаксис: name = име на елемента
В нашия случай името е „Passwd“.
Проверете стойността на локатора
Етап 1 : Въведете “name = Passwd” в целевото поле и кликнете върху бутона Find. Забележете, че текстовото поле „Парола“ ще бъде маркирано.
Използване на Текст на връзката като локатор
Всички хипервръзки на уеб страница могат да бъдат идентифицирани с помощта на Текст на връзката. Връзките на уеб страница могат да бъдат определени с помощта на котва ( ). Анкерният маркер се използва за създаване на хипервръзки на уеб страница, а текстът между отварянето и затварянето на анкерните маркери представлява текста на връзката ( Някакъв текст ).
В тази извадка ще имаме достъп до връзката „Създаване на акаунт“ в долната част на формуляра за вход на gmail.com.
Намиране на текст на връзка на уеб елемент с помощта на Firebug
Етап 1 : Намерете / проверете уеб елемента (в нашия случай връзка „Създаване на акаунт“), като щракнете с десния бутон върху уеб елемента, чиято стойност на локатора трябва да проверите и щракнете върху опцията „Проверка на елемент с Firebug“.
Стъпка 2 : Бъдете наясно с текста, присъстващ в етикети и си го запишете. Следователно този текст ще се използва за идентифициране на връзката на уеб страница по уникален начин.
как да играя торент файл -
(Щракнете, за да видите увеличеното изображение)
Синтаксис: link = текст на връзката на елемента
В нашия случай текстът на връзката е „Създайте акаунт“.
Проверете стойността на локатора
Етап 1 : Въведете „link = Create an account“, т.е. стойността на локатора в целевото поле в Selenium IDE.
Стъпка 2 : Щракнете върху бутона Find. Забележете, че връзката ще бъде маркирана с жълт цвят с флуоресцентна зелена граница около полето.
Използване на XPath като локатор
Xpath се използва за намиране на уеб елемент въз основа на неговия XML път. XML означава Extensible Markup Language и се използва за съхраняване, организиране и транспортиране на произволни данни. Той съхранява данни в двойка ключ-стойност, която много прилича на HTML таговете. И двата са езиците за маркиране и тъй като те попадат под един и същ чадър, xpath може да се използва за намиране на HTML елементи.
Основното зад намирането на елементи с помощта на Xpath е обхождането между различни елементи по цялата страница и по този начин дава възможност на потребителя да намери елемент с препратка към друг елемент.
Xpath може да бъде създаден по два начина:
Относителна Xpath
Относителният Xpath започва от текущото местоположение и има префикс с „//“.
Например: // span (@ class = ’Email’)
Абсолютен Xpath
Absolute Xpath започва с корен път и има префикс с „/“.
Например: / HTML / body / div / div (@ id = ’Email’)
който е отговорен за бизнес стойността, предоставена от скрам екип
Ключови точки:
- Степента на успех при намирането на елемент с помощта на Xpath е твърде висока. Заедно с предишното изявление, Xpath може да намери относително всички елементи на уеб страница. По този начин Xpaths могат да се използват за намиране на елементи, които нямат идентификатор, клас или име.
- Създаването на валиден Xpath е труден и сложен процес. Налични са приставки за генериране на Xpath, но в повечето случаи генерираните Xpaths не успяват да идентифицират правилно уеб елемента.
- Докато създава xpath, потребителят трябва да е наясно с различните номенклатури и протоколи.
Примери за селен XPath:
Xpath Checker
Създаването на Xpath става малко по-лесно с помощта на Xpath Checker. Xpath Checker е добавка за Firefox за автоматично генериране на Xpath за уеб елемент. Добавката може да бъде изтеглена и инсталирана като всеки друг плъгин. Приставката може да бъде изтеглена от „https://addons.mozilla.org/en-US/firefox/addon/xpath-checker/”.
Веднага след като приставката бъде инсталирана, тя може да се види в контекстното меню, като щракнете с десния бутон върху всеки елемент, чийто xpath искаме да генерираме.
Щракнете върху “View Xpath”, за да видите Xpath израза на елемента. Ще се появи прозорец на редактор с генерирания израз на Xpath. Сега потребителят има свободата да редактира и модифицира генерирания израз на Xpath. Съответните резултати ще бъдат актуализирани кумулативно.
Имайте предвид, че XPath Checker се предлага и за други браузъри.
Но като повторим факта, че в повечето случаи генерираните Xpaths не успяват да идентифицират правилно уеб елемента. По този начин се препоръчва да създадем наш собствен Xpath, следвайки предварително дефинираните правила и протоколи.
В тази извадка бихме получили достъп до изображението на Google в горната част на формуляра за вход на gmail.com.
Създаване на Xpath на уеб елемент
Етап 1 : Въведете „// img (@ class =’ logo ’)“, т.е. стойността на локатора в целевото поле в IDE на Selenium.
Синтаксис: Xpath на елемента
Стъпка 2 : Щракнете върху бутона Find. Забележете, че изображението ще бъде подчертано с жълт цвят с флуоресцентна зелена граница около полето.
Заключение
Ето основните неща на тази статия.
- Локаторите са HTML свойствата на уеб елемент, който съобщава на Selenium за уеб елемента, върху който трябва да извърши действия.
- Съществува широк спектър от уеб елементи, с които потребителят може да си взаимодейства редовно. Някои от тях са: Textbox, Button, Drop Down, Hyperlink, CheckBox и Radio Button.
- С разнообразния набор от уеб елементи идва огромна провинция от стратегии / подходи за намиране на тези уеб елементи.
- Някои от широко използваните типове локатори са ID, ClassName, Link Text, XPath, CSS Selectors и Name.
Забележка: Поради факта, че създаването на CSS Selector и XPath изисква много усилия и практика, така че процесът се упражнява само от по-сложни и обучени потребители.
В този урок научихме различни видове локатори, включително Selenium Xpath.
Следващ урок # 6 : В продължение на този урок за типове Selenium Locator ще научим как да го използваме CSS селектор като локатор.
Някакви запитвания? Уведомете ни в коментари. Ще се опитаме да разрешим всички.
Препоръчително четене
- Намиране на елемент от селен чрез урок с текст с примери
- 30+ най-добри урока за селен: Научете селен с реални примери
- Как да намерим елементи в браузърите Chrome и IE за изграждане на скриптове за селен - Урок № 7 за селен
- Работа с уеб таблици, рамки и динамични елементи в Selenium Script - Селен Урок # 18
- Използване на Selenium Select Class за работа с падащи елементи на уеб страница - Урок № 13 за Selenium
- Урок за краставици селен: Интеграция на краставица Java Selenium WebDriver
- Как да използвам CSS Selector за идентифициране на уеб елементи за скриптове за селен - Урок № 6 за селен
- Проверете видимостта на уеб елементите, като използвате различни типове команди WebDriver - Урок № 14 за селен