Selenium Урок за IDE

⚡ Умно обобщение

Selenium IDE е инструментът за запис и възпроизвеждане на Selenium апартамент, построен за прототипping тестове, вместо да поддържа големи пакети, а панелите му обхващат записване, редактиране, изпълнение и проверка на всяка команда на Selenese.

  • 🔘 Основание: IDE записва действията на браузъра като команди на Selenese и ги възпроизвежда без никакво програмиране.
  • ☑️ Обхват: Третирайте го като прототипping инструмент, след което експортирайте скрипта за поддържаема рамка.
  • Лента с менюта: Файловите манипулатори създават, отварят, запазват и експортират; Редактирането вмъква нови команди и коментари.
  • 🧪 Опции: Диалоговият прозорец „Опции“ задава времето за изчакване по подразбиране, базовото URL поведение и реда на изграждане на локатора.
  • 🛠️ Редактор: Табличният изглед е мястото, където се въвеждат команди, цели и стойности; изгледът на изходния код показва същия скрипт като маркировката.
  • 📊 Прозорци за обратна връзка: Панелът за логване отчита съобщения за отстраняване на грешки, информация, предупреждения и грешки, докато панелът за справки обяснява избраната команда.
  • ???? Днес: Текущата IDE е Chrome, Firefox и разширение Edge, което запазва проекти като един .side файл.

Selenium Урок за IDE, обхващащ неговите панели, менюта и лента с инструменти

Какво е Selenium IDE?

Selenium IDE (интегрирана среда за разработка) е най-простият инструмент в Selenium Апартамент. Това е а Firefox добавка, която създава тестове много бързо чрез функцията си за запис и възпроизвеждане. Тази функция е подобна на тази на QTPИнсталирането и научаването са лесни.

⚠️ Бележка относно версиите: - Firefox добавката, показана в тази статия, беше оттеглена. Инструментът продължава да съществува като Chrome, Firefox и Edge разширение на браузъра който запазва запис и възпроизвеждане, но пренарежда интерфейса и запазва проекта като един единствен файл. .side файл. Всеки оригинален екран и настройка по-долу се запазват така, както са публикувани.

Поради своята простота, Selenium IDE трябва да се използва само като прототипping инструмент, а не цялостно решение за разработкаping и поддържане на сложни тестови пакети.

Въпреки че ще можете да използвате Selenium IDE без предварителни познания по програмиране, трябва поне да сте запознати с HTML, JavaСценарийи DOM (Document Object Model), за да използвате пълния потенциал на този инструмент. Познаване на JavaСкриптът ще е необходим, когато стигнем до раздела за командата „runScript“ на селенския език.

Selenium IDE поддържа режим на автоматично довършване при създаване на тестове. Тази функция служи за две цели:

  • Помага на тестера да въвежда команди по-бързо.
  • Той ограничава потребителя да въвежда невалидни команди.

Selenium Характеристики на IDE

Екранът с етикети по-долу идентифицира всеки регион, споменат в останалата част от тази статия.

Selenium IDE прозорец с лентата с менюта, основа URL лента с инструменти, панел с тестови случаи, редактор и панел с лог файлове, обозначени с

Menu Bar

Намира се в най-горната част на IDE. Най-често използваните менюта са менютата „Файл“, „Редактиране“ и „Опции“.

Менюто Файл

  • Той съдържа опции за създаване, отваряне, запазване и затваряне на тестове.
  • Тестовете се запазват в HTML формат.
  • Най-полезната опция е „Експортиране“, защото ви позволява да превърнете Selenium IDE тестови случаи във файлови формати, които могат да работят Selenium Дистанционно управление и уебдрайвер
  • „Експортиране на тестов случай като…“ ще експортира само текущо отворения тестов случай.
  • „Експортиране на тестовия пакет като…“ ще експортира всички тестови случаи в текущо отворения тестов пакет.

Разширеното меню „Файл“ по-долу показва и двата записа за експортиране един до друг.

Selenium Разгънато е менюто „Файл“ в IDE, показващо „Експортиране на тестов случай като“ и „Експортиране на тестов пакет като“

  • Към Selenium IDE v1.9.1, тестовите случаи могат да бъдат експортирани само в следните формати:
    • .cs (C# изходен код)
    • .java (Java изходен код)
    • .py (Python изходен код)
    • .rb (изходен код на Ruby)

Експортирането пренаписва всеки ред на Selenese като оператор на избрания език, както този HTML-to-Java сравнението показва.

Тестов случай на Selenese HTML, показан до еквивалентния експортиран файл Java изходен код

Забележка: Selenium Дистанционното управление беше премахнато през Selenium 3, така че експортираният RC скрипт вече не се изпълнява. Вместо това текущата IDE експортира код на WebDriver.

Меню Редактиране

  • Той съдържа обичайни опции като отмяна, повторение, изрязване, копиране, поставяне, изтриване и избиране на всички.
  • Двете най-важни опции са „Вмъкване на нова команда“ и „Вмъкване на нов коментар“.

Selenium Меню за редактиране в IDE с маркирани „Вмъкни нова команда“ и „Вмъкни нов коментар“

Нововмъкнатата команда или коментар ще бъдат поставени в горната част на текущо избрания ред.

Решетка на редактора преди и след вмъкване на нова команда над избрания ред

  • Командите са оцветени в черно.
  • Коментарите са оцветени в лилаво.

Разликата в цветовете прави вмъкнатия коментар лесен за разпознаване в дълъг скрипт.

Редове на редактора, показващи черна команда на Selenese до лилав ред за коментари

Меню с опции

Той предоставя интерфейс за конфигуриране на различни настройки на Selenium SDI.

Ще се съсредоточим върху опциите „Опции“ и „Формат на клипборда“.

Подменю „Формат на клипборда“, в което са изброени всички налични формати на фрагменти от код

Формат на клипборда

  • Форматът на клипборда ви позволява да копирате команда на Selenese от редактора и да я поставите като фрагмент от код.
  • Форматът на кода следва опцията, която сте избрали тук в списъка на Формат на клипборда.
  • HTML е изборът по подразбиране.

Например, когато изберете Java/JUnit 4/WebDriver като формат на клипборда, всяка команда на Selenese, която копирате от Selenium Редакторът на IDE ще бъде поставен като Java код. Вижте илюстрацията по-долу.

Командата на Selenese е копирана от редактора и е поставена като Java Изявление на WebDriver

Selenium Диалогов прозорец Опции на IDE

Можете да стартирате Selenium Диалогов прозорец Опции на IDE, като щракнете върху Опции > Опции… в лентата с менюта. Въпреки че има много налични настройки, ние ще се концентрираме върху няколкото важни.

Selenium Диалогов прозорец с опции на IDE с времето за изчакване, разширенията, базата URL и настройките за запис, обозначени с

  • Стойност на времето за изчакване по подразбиране. Това се отнася до времето, през което Selenium трябва да изчака определен елемент да се появи или да стане достъпен, преди да генерира грешка. Стойността на времето за изчакване по подразбиране е 30000ms.
  • Selenium Разширения на IDE. Тук посочвате разширенията, които искате да използвате за разширяване Selenium Възможностите на IDE. Можете да посетите addons.mozilla.org и използвайте „Selenium” като ключова дума за търсене на конкретните разширения.
  • Запомнете базата URL. Дръжте това отметнато, ако искате Selenium IDE за запомняне на базата URL всеки път, когато го стартирате. Ако махнете отметката, Selenium IDE винаги ще се стартира с празна стойност за Base. URL.
  • Запис за автоматично стартиране. Ако проверите това, Selenium IDE веднага ще запише действията на вашия браузър при стартиране.
  • Конструктори на локатори. Тук указвате реда, по който се генерират локаторите по време на запис. локатори са начини да се каже Selenium IDE върху кой UI елемент трябва да действа команда Selenese. В настройката по-долу, когато щракнете върху елемент с атрибут ID, идентификаторът на този елемент ще се използва като локатор, тъй като „id“ е първият в списъка. Ако този елемент няма атрибут ID, Selenium след това ще търси атрибута „име“, тъй като е втори в списъка. Списъкът продължава и продължава, докато се намери подходящ.

Плъзгането на запис нагоре или надолу в този списък променя атрибута, към който записващото устройство ще се обърне първо.

Списък на създателите на локатори, показващ реда на приоритет, използван, когато рекордерът генерира локатор

база URL бар - Bar

Всеки относителен адрес в скрипт се разрешава спрямо това поле.

база URL бар на Selenium IDE, съдържащо адреса на тестваното приложение

  • Има падащо меню, което запомня всички предишни стойности за лесен достъп.
  • Селенската команда „отвори“ ще ви отведе до URL които сте посочили в базата URL.
  • В тази серия от уроци ще използваме demo.guru99.com/test/newtours/ като наша база URLТова е сайтът за Mercury Tours, демонстрационно уеб приложение, използвано тук за целите на уеб тестване. Ще използваме това приложение, защото то съдържа пълен набор от елементи, от които се нуждаем за следващите теми.
  • Базата URL е много полезно за достъп до относително URLс. Да предположим, че вашата база URL е настроен на Mercury Адресът на обиколката е посочен по-горе. Когато изпълните командата „open“ с целевата стойност „signup“, Selenium IDE ще насочи браузъра към страницата за регистрация. Вижте илюстрацията по-долу.

команда за отваряне с относителна целева регистрация, разрешаваща се спрямо конфигурираната база URL

Toolbar

Лентата с инструменти съдържа контролите за запис и възпроизвеждане. Всеки бутон и неговите функции са изброени по-долу.

Плъзгач за скорост на възпроизвеждане Скорост на възпроизвеждане. Това контролира скоростта на изпълнение на вашия тестов скрипт.
Бутон за запис Запис. Това стартира/завършва вашата сесия на запис. Всяко действие на браузъра се въвежда като команда на Selenese в редактора.
Бутон за възпроизвеждане на целия тестов пакет Възпроизвеждане на целия тестов набор. Това ще възпроизведе последователно всички тестови случаи, изброени в панела „Тестови случаи“.
Бутон за възпроизвеждане на текущия тестов случай Пусни текущия тестов случай. Това ще възпроизведе само текущо избрания тестов случай в панела „Тестови случаи“.
Бутон за пауза и възобновяване Пауза/Възобновяване. Това ще постави на пауза или ще възобнови възпроизвеждането ви.
Бутон за стъпка Стъпка. Този бутон ще ви позволи да преминете към всяка команда във вашия тестов скрипт.
Бутон за прилагане на правилата за обобщаване Прилагане на правила за обобщаване. Това е разширена функционалност. Тя ви позволява да групирате команди на Selenese и да ги изпълнявате като едно действие.

Панел за тестови случаи

Панел с тестови случаи, в който са изброени отворените тестови случаи с цветово кодиране за успешен и неуспешен тест и обобщение на изпълнението

  • In Selenium IDE, можете да отворите повече от един тестов случай едновременно.
  • Панелът с тестови случаи ви показва списъка с текущо отворени тестови случаи.
  • Когато отворите тестов набор, панелът с тестови случаи автоматично ще изброи всички тестови случаи, съдържащи се в него.
  • Тестовият случай, написан с удебелен шрифт, е текущо избраният тестов случай.
  • След възпроизвеждане, всеки тестов случай е цветно кодиран, за да се покаже дали е преминал успешно или неуспешно.
  • Зеленият цвят означава „Преминат“.
  • Червеният цвят означава „Неуспешно“.
  • В долната част е обобщена информация за броя тестови случаи, които са изпълнени и са неуспешни.

Редактор

Можете да мислите за редактора като за мястото, където се случват всички действия. Той е достъпен в два изгледа: Таблица и Източник.

Изглед на таблица

  • През повечето време ще работите върху Selenium IDE, използващ табличен изглед.
  • Тук създавате и променяте команди на Selenese.
  • След възпроизвеждане всяка стъпка е цветно кодирана.

Редактор в табличен изглед с изпълнени стъпки, кодирани с цвят след възпроизвеждане

  • За да създадете стъпки, въведете името на командата в текстовото поле „Команда“.
  • Показва падащ списък с команди, които съответстват на записа, който въвеждате в момента.ping.
  • Target е всеки параметър (като потребителско име, парола) за команда, а стойността е входната стойност (като tom, 123pass) за тези Targets.

Command, Target и полета за стойност на Selenium Редактор на таблици в IDE

Изглед на източника

  • Той показва стъпките в HTML (по подразбиране) формат.
  • Той също така ви позволява да редактирате вашия скрипт точно както в табличния изглед.

Редактор в изглед на изходния код, показващ същия тестов случай като HTML таблица на Selenese

Регистрационен прозорец

Панелът за логове показва съобщения по време на изпълнение. Той предоставя актуализации в реално време за това какво Selenium IDE прави.

Дневниците са категоризирани в четири типа:

  • Debug – По подразбиране съобщенията за отстраняване на грешки не се показват в панела с лог файлове. Те се показват само когато ги филтрирате. Те предоставят техническа информация за това, което Selenium IDE работи зад кулисите. Може да показва съобщения като конкретен модул е ​​извършил зареждане, определена функция е извикана или външна JavaФайлът на скрипта беше зареден като разширение.
  • Информация – Пише коя команда Selenium IDE се изпълнява в момента.
  • Предупреждавам – Това са предупредителни съобщения, които се появяват в специални ситуации.
  • грешка – Това са съобщения за грешки, генерирани, когато Selenium IDE не успява да изпълни команда или ако е налице условие, зададено от команда „проверка“ или „твърдене“ не е изпълнено.

Падащо меню на панела за логове, изброяващо типовете съобщения за отстраняване на грешки, информация, предупреждение и грешка

Журналите могат да се филтрират по тип. Например, ако изберете опцията „Грешка“ от падащия списък, панелът с дневници ще показва само съобщения за грешки.

Панелът с лог файлове е филтриран към Грешка, така че остават видими само съобщенията за неуспешни команди

Референтен панел

Панелът „Справки“ показва кратко описание на текущо избраната команда на Selenese в редактора. Той също така показва описанието на локатора и стойността, които ще се използват за тази команда.

Справочен панел, описващ избраната команда на Selenese с нейните аргументи target и value

Панел с елементи на потребителския интерфейс

UI-елементът е за напреднали Selenium потребители. То използва JavaНотация на скриптови обекти (JSON) за дефиниране на картата на елементитеpingДокументацията и ресурсите се намират в опцията „Документация за елементите на потребителския интерфейс“ в менюто „Помощ“ на Selenium SDI.

Помощно меню на Selenium IDE със записа за документация на елементите на потребителския интерфейс

Пример за екран на UI елемент е показан по-долу.

Панел с елементи на потребителския интерфейс, съдържащ карта на JSON елементи за тествано приложение

Сборен панел

Сборът (rollup) ви позволява да изпълните група команди наведнъж. Групата от команди се нарича просто „rollup“. Той използва интензивно използване на JavaКонцепции за скрипт и UI-елемент за формулиране на колекция от команди, която е подобна на „функция“ в езиците за програмиране.

Сборните команди са многократно използваеми; което означава, че могат да се използват многократно в рамките на тестовия случай. Тъй като сборните команди са групи от команди, кондензирани в една, те допринасят значително за скъсяване на вашия тестов скрипт.

Няколко стъпки на Selenese са кондензирани в една команда за обобщаване в редактора

Пример за това как изглежда съдържанието на сборния раздел е показан по-долу.

Панелът за обобщаване, показващ JavaДефиниция на скрипт зад правило за многократна употреба на обобщаващи данни

Панелите за обобщаване и елементи на потребителския интерфейс нямат еквивалент в текущото разширение; командите за управление на потока и експортирането на код изпълняват тази роля сега.

Въпроси и Отговори

Един файл с разширение .side съдържа целия проект — всеки тест, всеки пакет и базата. URLТова замества стария модел с един HTML файл на тестов случай и улеснява предаването на проекта на контрол на версиите.

Да. Възпроизвеждането в разширението използва браузъра, в който е инсталирано, но командата за изпълнение на команден ред изпълнява запазен проект в други браузъри и се вписва в конвейер за изграждане, което плейърът в браузъра не може да направи.

Текущата IDE предоставя команди за управление на потока, включително if, else if, else, while, times, do, repeat if и for each. Това обхваща разклоняването и loo.ping в записан сценарий без JavaЗаобиколни решения със скриптове, необходими за старата функция за обобщаване.

Рекордерът съхранява няколко кандидат-локатора за всеки елемент. По време на възпроизвеждане алтернативите се изпробват, докато една от тях не успее, така че промененият идентификатор не прекъсва непременно стъпката. Постоянните неуспехи все още означават, че списъкът с локатори трябва да се редактира ръчно.

Щракването с десния бутон върху тест или пакет предлага WebDriver код за C# NUnit, C# xUnit, Java JUnit, JavaСкрипт Мока, Python pytest и Ruby RSpec. Допълнителен превключвател добавя коментари tracвръщане на всеки генериран ред обратно към неговата записана стъпка.

Машинното обучение се прилага главно към най-слабата част от записаните тестове: локаторите. Самовъзстановяващите се двигатели класират няколко кандидат-селектора и ги заменят с работещ, когато маркировката се промени, а подобни модели групират повтарящи се неуспехи, за да отделят реалните дефекти от шума от синхронизацията.

Той е подходящ за почистване. Експортираният код е един дълъг линеен метод и Copilot ще го рефакторира в обекти на страници, ще изтегли твърдо кодирани данни във фиксиращи елементи и ще замени фиксираните паузи с изрични чакания. Revвижте локаторите, които съхранява.

Веднага щом тестовете се нуждаят от споделена настройка, файлове с данни, отчети или повторна употреба в различни пакети. IDE е отлична за бързо доказване на сценарий; кодирана Selenium рамката е това, което поддържа стотици от тези сценарии поддържаеми.

Обобщете тази публикация с: