understanding working with robot framework
Урокът обяснява как да създадете и изпълните основен тестов случай в Robot Framework. Също така ще научите за променливите и ключовите думи в Robot Framework:
Научихме за Основи на IDE на Robot Framework - RIDE в нашия предишен урок, за да ни помогне да започнем с писането на тестови скриптове, използвайки RIDE в това Серия Robot Framework .
Урокът ще ви даде разбиране за основите на Robot Framework.
Ще научим за променливите и вида на променливите, налични в Robot Framework. Ще видим как да създадем и използваме променливата. Ще разберем и кои са ключовите думи заедно с различните им типове. Ще се запознаем и с това как могат да се създават и използват ключови думи.
как да направите списък в java -
Освен това този урок ще ви даде знания за опциите за настройка и премахване в RIDE, които са полезни при изпълнението на тестови случаи. Също така ще научим за етикетите - функция на RIDE, която помага при селективно изпълнение на тестови случаи.
Най-важното е, че ще пишем тестовия скрипт (със и без локатори) за няколко примерни тестови случая. Ще научим как се изпълняват тези тестови скриптове в Ride и накрая към края на урока ще се научим да преглеждаме отчетите за изпълнените тестови скриптове.
Ще завършим урока с някои полезни връзки в Robot Framework, към които можете да се обърнете по всяко време.
Какво ще научите:
- Създаване и изпълнение на основен тестов случай
- Разбиране на променливите в Robot Framework
- Разбиране на ключовите думи в Robot Framework
- Използване на настройка и прекъсване в RIDE
- Използване на тагове в RIDE
- Създаване на тестов случай с помощта на локатори
- Разбиране на подхода, управляван от ключови думи и данни в Robot Framework
- Достъп до отчети в Ride
- Заключение
- Препоръчително четене
Създаване и изпълнение на основен тестов случай
Нека сега създадем основен тестов случай в RIDE, където ще отваряме уебсайта google.com в браузъра Chrome и след това ще затваряме браузъра. Така че нека да започнем с първия ни тестов случай в Robot Framework, използвайки Ride.
Кликнете върху ‘TestCase1’ и можете да видите мрежа (трябва да сте в раздела ‘Редактиране’).
Следвайте стъпките по-долу, за да напишете кода:
- Въведете ‘Open Browser’ (ключова дума, предоставена от Selenium Library) в първата клетка.
- Когато започнете да пишете, изберете ctrl + alt + интервал (или ctrl + интервал), за да получите помощ за съдържанието.
- В следващата клетка въведете URL адреса Google .
- В третата клетка въведете името на браузъра. Предоставянето на името на браузъра не е задължително.
- В първата клетка на следващия ред напишете ‘Close Browser’.
Нека разберем какво направихме току-що.
- „Отворен браузър“ е ключова дума, предоставена от библиотеката Selenium, която импортирахме по-горе в нашия тестов случай.
- Помощта за съдържание ни помага с точния синтаксис, без да се налага да го помним.
- „Отваряне на браузъра“ приема първия аргумент като URL адрес на сайта, който искаме да отворим в браузъра. Вторият аргумент не е задължителен и той посочва браузъра, който искаме да използваме. Ако това не е споменато, Firefox се използва като браузър по подразбиране.
- „Затваряне на браузъра“ е отново ключова дума Selenium Library, която затваря браузъра, който отворихме.
Сега ще изпълним този код, като следваме стъпките по-долу:
- Щракнете върху раздела „Изпълнение“ - Този раздел съдържа опцията за изпълнение на тестовия случай.
- Отметнете „Автоматично запаметяване“ - За да сте сигурни, че всички незаписани промени в тестовия случай се запазват автоматично.
- Проверете „TestCase1“ - За да уведомите RIDE кой тестов случай искаме да изпълним.
- Щракнете върху бутона „Старт“ - За да започнете изпълнението на тестовия случай.
Тестовият случай се изпълнява успешно. По-долу е екранът, който получаваме след успешното изпълнение на тестовия случай. Тук можем да видим общото време, необходимо за изпълнение на теста, заедно с броя на преминалите и неуспешни тестови случаи.
Освен това, ние също имаме възможност да прегледаме Отчет и Дневник за изпълнения тестов случай. Ще видим това в предстоящите уроци.
Разбиране на променливите в Robot Framework
Подобно на всеки език за програмиране, където използваме променливи, ние също имаме променливи в Robot Framework.
Какво представляват променливите?
Променливите не са нищо друго освен места за съхранение, посочени от име, което съдържа някаква стойност.
Видове променливи
В Robot Framework имаме 3 типа променливи:
- Скалар
- Списък
- Речник
В следващите две теми ще видим как всеки от горните типове променливи може да бъде създаден и използван.
Създаване на променливи
В Robot Framework променливите не са чувствителни към малки и големи букви. Трябва да използваме главни букви, за да се позоваваме на глобални променливи (които се използват в целия набор от тестови случаи) и малки букви, за да препращаме локални променливи (които се използват само в някои тестови случаи).
За да назовем променлива, използвахме идентификатор на тип променлива (&,%, $, @), който предхожда името на променливата, записано в фигурни скоби. Нека да разгледаме как се декларира всеки от променливите типове.
# 1) Скаларна променлива : Скаларна променлива е посочена като $ {Name}.
Тук $ - се отнася до типа на променливата, т.е. Скаларно име - е името на променливата.
Като правило това се поставя в къдрави скоби. Скаларна променлива може да бъде предоставена с всякаква стойност, например низ, обект, числа, списъци, речници или персонализирани обекти.
Нека присвоим стойност 5 на скаларната променлива ‘a’.
Следвайте стъпките по-долу, за да направите това:
TestCase1 (щракване с десния бутон) -> Нов скалар
Получавате изскачащ екран, както е показано по-долу:
Въведете името на променливата в къдравите скоби, както се вижда на снимката по-горе. Посочете стойността му в текстовото поле „Стойност“ и добавете коментар, ако искате.
Тази скаларна променлива - $ {a}, която току-що създадохме, вече може да се види в левия панел.
# 2) Променлива на списъка : Променливата на Списък е посочена като @ {name}.
Тук @ - се отнася до типа на променливата, т.е.Име на списък - е името на променливата. Като правило това се поставя в къдрави скоби.
Списъкът позволява в него да се съхранява списък на Python или подобен на списък обект. Robot Framework не позволява низовете да се използват като списъци, но са разрешени обекти като кортежи или речници.
Нека присвоим стойности ‘Hello’, ‘Robot’ и ‘Framework’ за изброяване на променлива ‘b’. Следвайте стъпките по-долу, за да направите това:
TestSuite1 (щракнете с десния бутон) -> Нова променлива на списъка
Получавате изскачащ екран, както е показано по-долу. Вместо подразбиращото се „4“ в падането на колоните, ние ще изберем „2“.
Сега следвайте стъпките по-долу:
- Въведете името на променливата „b“ в къдравите скоби, както се вижда на снимката по-долу.
- Посочете стойностите му в текстовото поле „Стойност“.
- Добавете коментар (по избор).
- Щракнете върху „OK“, за да запазите променливата.
Всяка от стойностите в променливата на списъка е достъпна спрямо нейния индекс, който се счита от 0 за първата стойност в списъка. Например, за да се позовем на Framework, бихме го записали като @ {b} (2), тъй като е на позиция 3, за която индексът ще бъде 2.
# 3) Променлива в речника : Променливата в речника е посочена като & {Name}.
Тук & - се отнася до типа на променливата, т.е. Име на речника - е името на променливата. Като правило това се поставя в къдрави скоби.
Речниковите променливи се използват главно, когато имаме таблица с двойки ключ-стойност. Например, когато искаме да тестваме вход за набор от ID и парола. Разликата между променливите Списък и Речник е как се препращат и това ще видим напред.
Нека създадем речникова променлива ‘login’ и присвоим стойности: имейл и парола за нея, както е показано по-долу: ‘testingrf19@gmail.com’, ‘123’. Следвайте стъпките по-долу, за да направите това:
TestSuite1 (щракнете с десния бутон) -> Нова променлива на речника
Получавате изскачащ екран, както е показано по-долу. Вместо стандартното „4“ в падащото изображение на колоните, ние ще изберем „1“.
Сега следвайте стъпките по-долу:
- Въведете името на променливата ‘login’ в къдравите скоби, както се вижда на снимката по-долу.
- Посочете стойностите му в текстовото поле „Стойност“.
- Добавете коментар (по избор).
- Щракнете върху „OK“, за да запазите променливата.
За разлика от списъчните променливи, които използват индекса за препращане към отделните стойности в него, променливите в речника използват по-ясен начин за препращане към неговите стойности. Както в горния случай, ще използваме & {login} (имейл) и & {login} (парола). Не изглежда ли това напълно обяснимо?
Тези създадени променливи се виждат и в ‘TestSuite1’ (раздел Редактиране).
Използване на променливи
Сега ще видим как можем да използваме тези променливи в нашия тестов случай. Ще използваме тестовия случай, създаден по-рано, и ще заменим използвания URL адрес с променлива, която вместо това ще съхранява URL адреса. Така че нека създадем скаларна променлива с име „URL“ и съхраняваме стойността Google в него.
Сега ще заменим URL адреса с променливата в нашия код. Тъй като това е скаларна променлива, тя ще бъде посочена като $ {URL}. Нашият тестов случай сега трябва да изглежда както е показано по-долу:
Нека да стартираме този тестов случай и да видим дали променливата „URL“ ще бъде заменена с правилната стойност. Да! Нашият тестов случай се изпълнява успешно. Google com отваря се в браузъра и след това браузърът се затваря. Резултатът показва, че това е успех.
Зеленият символ до името на тестовия случай в левия панел и PASS в десния панел показва, че изпълнението на тестовия случай е било успешно.
Ето как използваме променливи в тестовия случай. Ползата от използването на променливи е видима, когато използваме една и съща стойност на няколко места. Винаги, когато има промяна в стойността, ще трябва само да заменим стойността на променливата и същата ще се отрази на всяко място, където променливата е била използвана.
По същия начин можем да използваме списъка, както и променливата на речника, както се изисква в нашите тестови случаи.
Разбиране на ключовите думи в Robot Framework
Какво представляват ключовите думи?
Ключовите думи, както подсказва името („Ключ“ + „дума“) е дума, която служи като ключ към нещо, което не се вижда. По-просто нека разберем, че ако имам задача с 10 стъпки, които трябва да направя, и спомена тези 10 стъпки и ги препращам с име, тогава името е ключова дума.
Видове ключови думи
Robot Framework предоставя два вида ключови думи:
- Ключови думи в библиотеката : Тези ключови думи са известни също като ключови думи от ниско ниво. Те се предоставят от библиотеките, използвани с Robot Framework (вградени и външни библиотеки). Например, имаме ключова дума „Log to Console“, която се предоставя от библиотеката Builtin, а „Open Browser“ е ключова дума, предоставена от библиотеката Selenium.
- Потребителски дефинирани ключови думи : Те са известни също като ключови думи на високо ниво. Те се определят от потребителя. Дефинираните от потребителя ключови думи могат да съдържат и други ключови думи от библиотеката и / или други действия.
Създаване на ключови думи
Този урок ще обясни начините за създаване на дефинирани от потребителя ключови думи.
Кликнете с десния бутон ‘TestSuite1’ и изберете „Нова потребителска ключова дума“ .
Ще получите изскачащ екран, както е показано по-долу. Нека създадем ключова дума, за да отворим уебсайта на Google. Така че ще имаме само една ключова дума, за да изпълним задачата на тестовия случай, който сме създали.
Отворете тестовия случай, който сте създали, и погледнете стъпките, които сте добавили. Бяхме отворили google.com в Chrome и след това затворихме браузъра.
Нека дадем името ‘Отваряне на google’ към нашата ключова дума и щракнете върху „Ok“.
Ключовата дума е дефинирана и сега действията, които трябва да бъдат извършени, ще бъдат записани в тази ключова дума. Така че кликнете върху „ Отваряне на Google и напишете същите стъпки, които написахме в нашия TestCase1.
Както виждате по-долу, ключовата дума „ Opengoogle ”Ще се отвори Google com в браузъра Chrome и след това излезте от браузъра.
Използване на ключови думи
Вече дефинирахме нашата ключова дума „ Отворете Google ”. Доста е лесно да го използвате в нашия тестов случай. Първо, разгледайте оригиналния ни тестов случай, който бяхме създали за отваряне на google по-долу.
Сега ще заменим този код с ключовата дума. Ще забележите, че когато започнете да пишете ключовата дума и отворите асистента за съдържание, тази ключова дума също ще бъде видима в списъка, който се показва. Погледнете екранната снимка по-долу.
След като бъде заменен, нашият TestCase1 ще изглежда просто, както е показано по-долу:
Нека изпълним това и да видим дали работи по предназначение.
Да! тестът преминава и имаме очаквания резултат.
Използване на настройка и прекъсване в RIDE
Точно както подсказва името, настройката е набор от инструкции / ключови думи, които трябва да бъдат изпълнени като първоначална подготовка за изпълнение на действителния тестов случай. Като пример, обикновено за всяко изпълнение на тестов случай, нашето основно изискване би било да отворим браузър. Така че винаги можем да добавим тази стъпка за отваряне на браузъра като настройка.
По същия начин, разрушаването са набор от инструкции / ключови думи, които трябва да бъдат изпълнени в края на изпълнението на тестовия случай. Като пример, когато приключим с изпълнението на тестов случай, бихме искали да затворим браузъра. Така че винаги можем да добавим тази стъпка за затваряне на браузъра като разкъсване.
Дейностите по настройка и премахване могат да бъдат декларирани на:
- Ниво на тестовия пакет: Когато бъдат декларирани на ниво тестови пакети, инструкциите за настройка ще бъдат изпълнени преди да бъдат изпълнени някой от тестовите случаи в рамките на този тестов пакет. По същия начин, декларирането, декларирано на ниво тестови пакети, ще бъде изпълнено, след като някой от тестовите случаи в този тестов пакет бъде изпълнен.
- Тестово ниво : Когато се декларират на ниво тестови случаи, инструкциите за настройка ще бъдат изпълнени преди изпълнението на тестовите случаи в рамките на този тестов пакет. По същия начин обявеното на ниво тестово събитие разрушаване ще бъде изпълнено след изпълнението на тестовия случай.
Нека сега видим как добавяме настройка на ниво Test Case.
- Създайте TestCase2.
- Щракнете върху бутона „Редактиране“ за Настройка, точно под Настройки в десния панел.
- Въведете ключовата дума „Open Browser“ в нашия случай. Тук можете да използвате помощ за съдържание.
- Аргументите могат да се предават заедно с ключовата дума, като се разделят със знака на тръбата ‘|’.
- Щракнете върху „OK“.
Нека сега видим как добавяме събаряща активност на ниво Test Case.
- Щракнете върху TestCase1
- Щракнете върху бутона „Редактиране“ за сваляне, точно под Настройки в десния панел.
- Въведете ключовата дума „Затвори браузъра“ в нашия случай. Тук можете да използвате помощ за съдържание.
- Щракнете върху „OK“.
Сега, когато сме преместили и двете стъпки на тестовия случай, както са настроени и разрушават дейност, нека добавим още една стъпка към тестовия случай, за да можем да изпълним и проверим резултата от него. Нека покажем „Здравейте“ на конзолата. Ключовата дума, която използвахме, е „Log“, която е от Builtin Library.
TestCase2 ще изглежда както е показано по-долу:
Когато се изпълни, първо се изпълнява инсталацията, последвана от регистриране на „Здравейте“ на конзолата и накрая, активността по разпадане се изпълнява и браузърът се затваря.
Използване на тагове в RIDE
Маркирането се използва, когато искаме да групираме набор от тестови случаи, за да ги изпълним или да избегнем тяхното изпълнение. Основно групираме тестове под регресия, дим и здрав разум. Или може да е в сценарии, при които някои важни функционалности трябва да бъдат тествани многократно.
За да разберем как се създават и използват маркери, нека напишем два прости тестови случая - ‘TestCase3’ и ‘TestCase4’. Кодът за това е както е показано по-долу. Използвахме ключовите думи, ‘Влезте в конзолата’ което е от библиотеката Builtin.
Тест 3
Тест 4
За да маркирате тези тестови случаи, изпълнете стъпките по-долу:
- Щракнете върху бутона Редактиране за „Тагове“.
- В изскачащия прозорец въведете име за маркера, кажете Case3.
- Щракнете върху „OK“
И двата тестови случая вече имат етикет „Case3“. Нека да видим как това може да се използва.
Да предположим, че искаме да изпълним само testcase3 и testcase4.
- Отидете в раздела RUN
- Поставете отметка в квадратчето „Изпълнявайте тестове само с тези тагове“
- В текстовото поле по-долу напишете „Case3“.
- Щракнете върху бутона старт.
Имайте предвид, че не сме избрали нито един тестов случай, но след изпълнението на теста ще видите, че са изпълнени само ‘TestCase3’ и ‘TestCase4’.
По същия начин имаме и възможността да пропуснем конкретни маркирани тестови случаи, използвайки ‘Пропуснете тестовете с тези тагове’ и споменавайки името на маркера.
Също така имаме възможност за динамично създаване на тагове по време на изпълнение, използвайки ключовата дума „Задаване на маркер“ , по подобен начин можем също да премахнем тагове по време на изпълнение, използвайки ключовата дума „Премахване на маркера“ .
Надявам се този урок да ви даде ясна представа за създаване и използване на тагове досега.
Създаване на тестов случай с помощта на локатори
Създадохме много основен тестов случай, който включваше писане на нещо на конзолата или просто отваряне на браузър. Нека сега напишем тестови случаи, които включват използването на локатори.
Тестването на уебсайт или друго приложение включва намиране на елементите. Когато искаме да извършим действие върху който и да е елемент, трябва да знаем неговия локатор. Обикновено ‘id’ или ‘name’ са атрибутите на елемент, които се използват за идентифицирането му на страница и следователно извършват действие върху него с помощта на ключови думи.
Ще отворим браузър и ще потърсим официалния уебсайт на Robot Framework и ще го отворим.
Нека тръгнем и напишем кода за това.
- Създайте „TestCase5“ в TestSuite1.
- Отворете браузъра (Chrome).
- След това намерете локатора на текстовото поле за търсене в Google.
Настройки на Chrome -> Инструменти -> Инструменти за програмисти .
Същият може да бъде достъпен и чрез Ctrl + Shift + I.
- Когато инструментът за разработчици е отворен, щракнете върху иконата за намиране на елемент, както е посочено по-долу.
- Задръжте курсора на мишката върху текстовото поле за търсене в Google, докато се маркира и кликнете върху него. Ще забележите, че кодът, свързан с полето за търсене, се маркира в десния панел.
- От кода ще използваме името = ’q’ като локатор.
- „Въвеждане на текст“ е ключовата дума Selenium, която се използва за въвеждане на текст в полето за търсене в google.
- Натиснете клавиша Enter, за да получите резултатите от търсенето.
Ето как би изглеждал нашият код. Изглежда доста просто !! Нали?
Всичко е свързано с практиката. Всичко, от което се нуждаем, е да можем да си припомним коя ключова дума е на разположение за автоматизиране на определено действие. И така, колкото повече автоматизирате тестовете си, толкова по-удобно ще получите работа с тази рамка.
Резултатът от горния тест след изпълнение е както е показано по-долу. Браузърът chrome се вижда отворен по-долу, като показва резултатите от търсенето за „Robot Framework“.
Разбиране на подхода, управляван от ключови думи и данни в Robot Framework
Когато пишем тестов случай в Robot Framework, следваме някой от долупосочените подходи:
- Подход, управляван от ключова дума: Когато използваме ключови думи при писането на тестовите случаи, ние го наричаме подход, основан на ключови думи. Подходът, управляван от ключови думи, подобрява четливостта на тестовия случай. Вече видяхме как ключови думи могат да бъдат създадени и използвани в тестов случай.
- Подход, основан на данни : Този подход се следва главно, когато искаме да тестваме логиката за различни стойности на данните. При този подход се създава шаблон за ключова дума от високо ниво и аргументите към тази ключова дума се изпращат от тестовия случай, който е стойността на данните, за която трябва да бъде изпълнен тестовият случай.
Как използваме този подход в нашите тестови случаи е това, което ще видим по-долу, докато създаваме нова ключова дума.
Нека създадем тестов случай за търсене на различни инструменти / рамки за автоматизация на тестове - Robot Framework, J-метър, селен и др.
Тестовият случай просто ще съдържа данните, в този случай думите за търсене, които ще бъдат предадени като аргументи на шаблона. Шаблонът ще съдържа ключовата дума от високо ниво, която ще има действителния код, който трябва да бъде изпълнен. Стойностите за търсене ще бъдат записани в тестовия случай.
С това кратко разбиране нека създадем шаблона „Търсене в Google“, като следваме стъпките по-долу:
- Създайте TestCase6, както е обяснено в темата „Създаване на проект, Test Suite и Test Case в Ride“.
- Щракнете върху „Редактиране“ за Шаблон и въведете име. „Google Search“ в нашия случай.
- Ще използваме същия код като в TestCase5, с единствената разлика, че текстът, който ще се търси, ще бъде предаден като аргумент, както е посочено по-долу.
- Този аргумент също трябва да се спомене в текстовото поле Аргумент. Така че щракнете върху Редактиране в текстовото поле Аргументи и въведете аргумента и щракнете върху „OK“.
- Сега нека се върнем към TestCase6 и въведем данните.
- Ето как ще изглежда вашият екран след приключване на изпълнението на тестовия случай.
Ще забележите, че пет екземпляра на браузъра Chrome са се отворили и всеки ще има резултатите от търсенето на петте различни инструмента за автоматизация на тестове, които сме търсили.
Надяваме се, че този тестов случай ви е дал добра яснота относно подхода, управляван от данни. Докато изпробвате повече такива примери, този подход ще ви се стори съвсем прост.
Достъп до отчети в Ride
Дадено по-долу е екранната снимка след изпълнение на TestCase6. Той предоставя 2 опции „Отчет“ и „Дневник“, както е посочено по-долу. Той също така предоставя пълната връзка за достъп до дневника и отчета.
Доклад - Резултат от изпълнението на TestCase6
Той дава обобщен отчет за изпълнените тестови пакети. След като щракнете върху тестовия пакет, той показва подробности за тестовия пакет, тестово. Когато щракнем допълнително върху тестовия случай, той отваря подробностите за тестовия случай, който се нарича Дневник.
Влезте - Резултат от изпълнението на TestCase6.
Log дава подробен тестов случай за целия проект.
Освен иконите за отчет и дневник. Разполагаме и с URL адресите на тези, които могат да бъдат копирани и отворени директно в браузъра. Известен е проблемът, че понякога след стартиране на тестов случай иконите ‘Report’, ‘Log’ са деактивирани. При такъв сценарий тези връзки могат да бъдат копирани и отворени в браузъра, за да видите отчета.
URL адресът е местоположението в локалната машина, където се записват отчетите. Всеки път, когато изпълняваме тестов случай, това местоположение се опреснява и генерираният нов отчет се запазва на това място.
Robot Framework - Полезни връзки
Заключение
Надяваме се, че като начинаещ този урок ще ви предостави добри познания за използването на Robot Framework като инструмент за автоматизация на тестове.
В този урок научихме за създаването на променливи и ключови думи. Видяхме как да напишем тестови скриптове, използвайки подход, управляван от ключови думи и данни.
Направихме и практическо изпълнение на тестовия скрипт. Урокът даде представа за преглед на подробните резултати от теста чрез дневник и отчети. Освен това са споделени и важни URL адреси, свързани с Robot Framework.
е мрежовият ключ за сигурност същият като паролата за wifi
„Практиката прави човека перфектен“, така че без никакво забавяне използвайте този инструмент, доколкото можете, за да можете постепенно да станете уверени в използването му.
Честито четене !!
Препоръчително четене
- Урок за Robot Framework - функции и инсталиране на софтуер
- Първи стъпки с RIDE - IDE на Robot Framework
- Урок за TestNG: Въведение в TestNG Framework
- Рамка за BDD (поведенческо развитие): Пълен урок
- D3.js Урок - Рамка за визуализация на данни за начинаещи
- Урок за рамка за жасмин, включващ жасминова жаба с примери
- Урок за Java Collections Framework (JCF)
- Karate Framework Tutorial: Автоматизирано API тестване с карате