Додаци за језгро селена (Усер-Ектенсионс.јс)

Преглед садржаја:

Anonim

Да бисмо разумели проширења, прво морамо да разумемо три стуба селена ИДЕ

  1. Акција: Коју операцију изводите на екрану корисничког интерфејса

  2. Процењивачи / тврдња: Коју верификацију вршите на подацима које добијате из корисничког интерфејса

  1. Стратегија локатора: Како можемо пронаћи елемент у корисничком интерфејсу.

Сада Селениум ИДЕ има врло зрелу библиотеку са пуно акција, тврдњи / процењивача и стратегија локатора.

Али понекад морамо да му додамо још неке функционалности за потребе наших пројеката. У тој ситуацији ову библиотеку можемо проширити додавањем прилагођених проширења. Ова прилагођена проширења називају се „Корисничка проширења“.

На пример, потребна нам је акција која може претворити текст у велика слова пре него што га попунимо у веб елемент. Не можете пронаћи ову радњу у подразумеваној библиотеци акција. У том случају можете креирати сопствено „Корисничко проширење“. У овом упутству научићемо како да креирамо корисничку екстензију за претварање текста у велика слова

Захтев за креирање корисничког проширења за Селениум:

Да бисмо креирали корисничку екстензију за Селениум ИДЕ, морамо знати основни концепт концепта објекта ЈаваСцрипт и Јава Сцрипт.

Да бисте креирали своју корисничку екстензију, потребно је да креирате методе скрипте Јава и додате их прототипу објекта селениум и прототипу објекта ПагеБот.

Како Селениум ИДЕ препознаје корисничку екстензију?

Након додавања корисничке екстензије у Селениум ИДЕ када покренемо Селениум ИДЕ, сва ова проширења у прототипу јавасцрипта се учитавају, а Селениум ИДЕ их препознаје по имену.

Како направити корисничку екстензију

Корак 1) Акција - све радње започиње „до“, тј. Ако је акција за велики текст, њено име ће бити доТектУпперЦасе. Када додамо овај метод акције у Селениум ИДЕ, Селениум ИДЕ ће сам створити метод чекања за ову акцију. Дакле, у овом случају када креирамо акцију доТектУпперЦасе , Селениум ИДЕ ће створити одговарајућу функцију чекања као ТектУпперЦасеАндВаит . Може да прихвати два параметра

Пример: Текст великих слова

Селениум.прототипе.доТектУпперЦасе = функција (локатор, текст) {// Овде је финдЕлемент сам способан да обрађује све врсте локатора (кпатх, цсс, наме, ид, цлассНаме), само треба да проследимо текст локаторавар елемент = тхис.паге (). финдЕлемент (лоцатор);// Креирајте текст за куцањетект = тект.тоУпперЦасе ();// Замените текст елемента новим текстомтхис.паге (). реплацеТект (елемент, текст);};

Корак 2) Процењивачи / тврдње - Сви оцењивачи регистровани у прототипу селеновог објекта биће са префиксом

„гет“ или „ис“ Пр. гетВалуеФромЦомпоундТабле, исВалуеФромЦомпоундТабле. Може да прихвати два параметра, један за циљ и други за поље вредности у тест случају.

За сваког проценитеља постојаће одговарајуће функције верификације са префиксом „верифи“, „ассерт“, а префикс функције ваит са „ваитФор“

Пример: За оцењиваче великих слова

Селениум.прототипе.ассертТектУпперЦасе = функција (локатор, текст) {// "ФиндЕлемент" аутоматски обрађује све стратегије локаторавар елемент = тхис.паге (). финдЕлемент (лоцатор);// Направите текст за верификацијутект = тект.тоУпперЦасе ();// Добијање стварне вредности елементавар ацтуалВалуе = елемент.валуе;// Уверите се да се стварна вредност подудара са очекиваномАссерт.матцхес (очекивана вредност, стварна вредност);};Селениум.прототипе.исТектЕкуал = функција (локатор, текст) {врати тхис.гетТект (лоцатор) .валуе === текст;};Селениум.прототипе.гетТектВалуе = функција (локатор, текст) {врати тхис.гетТект (лоцатор) .валуе;};

Корак 3) Стратегија локатора - Ако желимо да креирамо сопствену функцију за лоцирање елемента, тада

морамо проширити прототип ПагеБот функцијом са префиксом „лоцатеЕлементБи“.

Потребна су два параметра, први ће бити низ локатора, а други документ

где треба тражити.

Пример: За локатор текста великих слова

// "ИнДоцумент" је документ који тражите.ПагеБот.прототипе.лоцатеЕлементБиУпперЦасе = функција (текст, инДоцумент) {// Направите текст за претрагувар очекујеВалуе = тект.тоУпперЦасе ();// Прелистај све елементе, тражећи оне који јесу// вредност === наша очекивана вредноствар аллЕлементс = инДоцумент.гетЕлементсБиТагНаме ("*");// Ова звезда '*' је нека врста регуларног израза који ће проћи кроз сваки елемент (у ХТМЛ ДОМ-у сваки елемент сигурно има име ознаке попут <боди>, <а>, <х1>, <табле>, <тр> , <тд> итд.). Овде је наш мотив да пронађемо елемент који се подудара са великим словом који смо прошли, па ћемо га претраживати са свим елементима, а када добијемо подударање, имаћемо исправан веб елемент.фор (вар и = 0; и <аллЕлементс.ленгтх; и ++) {вар тестЕлемент = аллЕлементс [и];ако (тестЕлемент.иннерХТМЛ && тестЕлемент.иннерХТМЛ === очекивана вредност) {ретурн тестЕлемент;}}ретурн нулл;};

Како се користи новостворено језгрено проширење?

  1. Идите на Селениум ИДЕ

    Кликните на Оптионс -> Оптионс…

  1. У одељку Опште одаберите локацију новоствореног проширења Селениум Цоре

  2. Кликните на дугме У реду и поново покрените Селениум ИДЕ

  1. Проширење ћете пронаћи на списку наредби

Ево листе популарних проширења / додатака који се користе у програму Селениум ИДЕ

Име Сврха
Фаворити Да бисте тест пакет означили као омиљени и извршили их једним кликом
Флек Пилот Кс За Флек аутоматизацију
ФлекМонкиум За тестирање снимања и репродукције засновано на Адобе Флек-у у програму Селениум ИДЕ
Записивање датотека За чување дневника у датотеци
Контрола протока За контролу тока извршавања теста
Истакните елементе Да бисте истакли веб контролу
Имплицитно сачекајте Да сачекате елемент одређено време
Снимак екрана при неуспеху Направите снимак екрана у случају неуспеха
Резултати теста Сачувајте резултат тест случаја за тестни пакет једним кликом

Све ово и још много тога можете добити у одељку за преузимање службене странице СелениумХК

хттп://доцс.селениумхк.орг/довнлоад/

Резиме:

  • Постоје три дела Селениум ИДЕ, Ацтион, Ассессорс / Ассертион, Лоцатор стратегије.
  • Корисничко проширење се креира када Селениум ИДЕ не испуњава тренутни захтев.
  • Да бисте креирали корисничку екстензију, потребно је додати јавасцрипт прототипу селеновог објекта.
  • Након стварања проширења, потребно је да га додате у Селениум ИДЕ и поново покренете ИДЕ.

Преузмите додатак за језгро Селениум коришћен у овом водичу