what is hybrid framework selenium
Tento informatívny návod vysvetľuje, čo je hybridný rámec, použitia a súčasti selénového hybridného pohonu a ako ho implementovať:
Čo je to hybridný rámec?
Hybridný riadený rámec je kombináciou rámca založeného na dátach a kľúčového slova.
Tu sa kľúčové slová, ako aj údaje o teste, externalizujú. Kľúčové slová sú udržiavané v samostatnom súbore triedy Java a testovacie údaje je možné udržiavať buď v súbore vlastností / excel, alebo je možné použiť poskytovateľa údajov rámca TestNG.
=> Skontrolujte tu, aby ste tu videli A-Z selénových výcvikových kurzov.
Čo sa dozviete:
aký je najlepší blokovač vyskakovacích okien pre chróm
Úvod do hybridného rámca
Tu je videonávod:
Hybridný riadený rámec je väčšinoupoužívajú manuálni testeri, ktorí nemajúveľa znalostí programovacích jazykov. Takíto ľudia sa môžu pozrieť na kľúčové slová, testovacie údaje, úložisko objektov a okamžite začať vytvárať testovací prípad, bez toho, aby museli niečo v rámci kódovať.
Komponenty hybridného pohonu
Komponenty hybridného rámca sú podobné ako komponenty rámca poháňaného kľúčovými slovamipričom všetky testovacie údaje, ako aj kľúčové slová, sú externalizované, čím sa skript objaví v zovšeobecnenejšej podobe
- Knižnica funkcií
- Tabuľka Excel na ukladanie kľúčových slov
- Dizajn šablóny testovacieho prípadu
- Objektové úložisko pre prvky / lokátory
- Testovacie skripty alebo skript ovládača
# 1) Knižnica funkcií
Pre každú akciu používateľa sa vytvárajú metódy definované používateľom. Inými slovami, kľúčové slová sa vytvárajú v súbore knižnice.
Napríklad: Urobme príklad automatizáciou nasledujúcich testovacích prípadov.
Testovací prípad č | Popis | Skúšobné kroky | ocakavane vysledky | ||
---|---|---|---|---|---|
AssertElement | xpath | // div (obsahuje (@ id, 'usericon')) | Zobrazené | ||
1 | Overte prítomnosť loga Amazon | 1. Zadajte adresu URL - https://www.amazon.com | Logo Amazon by malo byť zobrazené na domovskej stránke | ||
dva | Overte platné prihlásenie | 1. Zadajte adresu URL - https://www.amazon.com 2. Kliknite na odkaz „Prihlásiť sa“ 3. Zadajte platný e-mail 4. Kliknite na pokračovať 5. Zadajte platné heslo 6. Kliknite na tlačidlo SignInButton | Ikona používateľa by mala byť na domovskej stránke | ||
3 | Nesprávne prihlásenie | 1. Zadajte adresu URL - https://www.amazon.com 2. Kliknite na odkaz „Prihlásiť sa“ 3. Zadajte neplatný e-mail 4. Kliknite na pokračovať | Toto chybové hlásenie by malo obsahovať správu „nenájdem účet“ |
Najskôr sa analyzujú testovacie prípady a ich testovacie kroky a zaznamenajú sa jeho činnosti.
Povedz, dovnútra TC 01: Overte prítomnosť loga Amazon - akcie používateľa budú: Zadajte adresu URL
V TC 02: Overte platné prihlásenie - používateľské akcie sú Zadajte URL, kliknite, Zadajte
V TC03: Overte neplatné prihlásenie - používateľské akcie sú Zadajte URL, kliknite, Zadajte
Teraz sa vytvorí súbor knižnice s kľúčovými slovami definovanými pre každú akciu, ako je uvedené nižšie:
šablóna matice sledovateľnosti požiadaviek s príkladom
Keywords.java
package Keywords.Defined; import java.io.File; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; public class Keywords { String path = System.getProperty('user.dir'); WebDriver driver; // driver object is declared //method for entering URL – Keyword is ‘enter_URL’ public void enter_URL(WebDriver driver,String TestData) throws IOException { driver.get(TestData); } //method for typing action – Keyword is ‘type’ public void typeIn(WebDriver driver, String locatorValue, String locatorType, String testdata) { driver.findElement(this.getObject(ObjectName,locatorType)).sendKeys(testdata); } //method for click action – Keyword is ‘click’ public void click(WebDriver driver, String locatorValue, String locatorType) { driver.findElement(this.getObject(ObjectName,locatorType)).click(); } }
# 2) Tabuľka programu Excel na ukladanie kľúčových slov
Kľúčové slová, ktoré sú vytvorené v súbore knižnice, sú uložené v hárku programu Excel s jeho popisom pre každého, kto rozumie tejto architektúre.
# 3) Dizajn šablóny testovacieho prípadu
Pre rámec je vytvorená šablóna Testovací prípad. Nie je k dispozícii žiadna konkrétna šablóna. Podľa hybridného rámca by mali byť údaje o teste aj kľúčové slová externalizované. Podľa toho sa vytvorí šablóna. Napríklad:
Pre testovací prípad 2 - Overte platné prihlásenie
Skúšobné kroky | Typ lokátora | Hodnota lokátora | TestData | AssertionType | Očakávaná hodnota |
---|---|---|---|---|---|
enter_URL | https://www.amazon.com | ||||
Kliknite | xpath | // div (contains (@ id, 'SignIn')) | |||
TypeIn | xpath | // div (obsahuje (@ id, 'email')) | test@gmail.com | ||
Kliknite | xpath | // div (contains (@ id, 'continue')) | |||
TypeIn | id | heslo | Heslo @ 123 | ||
Kliknite | id | Prihlásiť sa |
Rovnako sú testovacie kroky vyplnené pre každý testovací prípad na samostatnom hárku.
# 4) Objektové úložisko pre prvky
Pre všetky prvky na webovej stránke je vedené samostatné úložisko. Každý WebElement je označený menom, za ktorým nasleduje jeho hodnota v úložisku objektov (v tomto prípade je to súbor vlastností). Šablóna Testovací prípad bude obsahovať názov objektu a jeho hodnota sa prevezme z úložiska, ako je uvedené nižšie:
Tu je LoginLink názov objektu a jeho hodnota sa číta z OR.properties ako ‘// div (obsahuje (@id,‘ SignIn ‘))
V súlade s tým bude kód na načítanie hodnoty z ObjectRepository zahrnutý do skriptu Keywords.java
Napríklad Súbor z knižnice: zvážte akciu kliknutia v databáze Keywords.java
public class Keywords { public void click(WebDriver driver, String ObjectName, String locatorType) throws IOException{ driver.findElement(this.getObject(ObjectName, locatorType)).click(); } By getObject(String ObjectName, String locatorType) throws IOException{ //Object Repository is opened File file = new File(path+'\Externals\Object Repository.properties'); FileInputStream fileInput = new FileInputStream(file); //Properties file is read Properties prop = new Properties(); //find by xpath if(locatorType.equalsIgnoreCase('XPATH')){ return By.xpath(prop.getProperty(ObjectName)); // ObjectName is read and its value is returned } //find by class else if(locatorType.equalsIgnoreCase('ID')){ return By.Id(prop.getProperty(ObjectName)); // ObjectName is read and its value is returned } //find by name else if(locatorType.equalsIgnoreCase('NAME')){ return By.name(prop.getProperty(ObjectName)); // ObjectName is read and its value is returned } return null; } }
Objektové úložisko pre testovacie dáta v testovacích prípadoch
Ukážem vám jednoduchý príklad toho, ako sú všetky testovacie údaje obsiahnuté v skripte externalizované, čím sa rámec zovšeobecňuje.
- Externalizácia testovacích údajov zo šablóny testovacieho prípadu:
Podobne sa testovacie údaje načítajú aj zo súboru vlastností.
- Objektové úložisko pre testovacie údaje vo všeobecnom skripte
Ďalšie všeobecné údaje, ako je názov prehľadávača, umiestnenie spustiteľného ovládača, názov testovacieho prípadu atď., Je možné tiež externalizovať v samostatnom úložisku.
Vo vyššie uvedenom príklade je parameter prehliadača externalizovaný v súbore vlastností - Basic.properties.
- Odovzdanie testovacích údajov z TestNG Suite:
TestData možno tiež preniesť zo súboru sady TestNG do metódy.
Používame značku nazvanú v súbore TestNG.xml tesne nad triedou, kde sa používa.
Syntax:
Len čo je testovacia sada zadaná s názvom parametra a jeho hodnotou, v skripte sa použijú anotácie na určenie, ktorá metóda používa túto hodnotu. Toto je určené pomocou anotácie @Parameters.
Syntax: @Parameters ({„value_to_be_passed“})
Viaceré parametre možno tiež odovzdať metóde ako:
Syntax:
@Parameters({“Chrome”}, {“ TestCase.xls”}, {“ chromedriver.exe”}) public void init(String Browser, String SheetName, String DriverLocation){ ….. …… ………. }
Upozorňujeme, že sa to netýka viacerých hodnôt toho istého parametra, má to iba viac hodnôt rôznych parametrov.
výber zoradiť v c ++
# 5) Skript ovládača
Obsahuje hlavnú logiku na čítanie všetkých testovacích prípadov zo šablóny excelu šablóny testovacích prípadov a vykoná zodpovedajúcu akciu načítaním zo súboru knižnice. Skript je navrhnutý na základe vytvorenej šablóny testovacích prípadov.
Záver
Hybridný rámec je možné vytvoriť a použiť na automatizáciu akejkoľvek aplikácie. To zase zníži počet osobohodín strávených skriptovaním automatizačného kódu, pretože vytvorený rámec je možné použiť na automatizáciu viacerých aplikácií.
Podobne môžu byť rámce vytvorené podľa potrieb projektu a použité na účely automatizácie.
Dúfame, že sa vám páčila séria informatívnych tutoriálov o seléne!
=> Skontrolujte VŠETKY návody na selén tu.
Odporúčané čítanie
- Rámec riadený dátami v selenovom WebDriveri pomocou POI Apache
- Vytváranie rámca selénu a prístup k testovacím údajom z Excelu - Výučba selénu č. 21
- Úvod do rámca JUnit a jeho použitie v selénovom skripte - selén výučba # 11
- Ako používať rámec TestNG na vytváranie skriptov selénu - návod na testovanie selénu TestNG # 12
- Testovanie na základe dát alebo parametrizovanie pomocou Spock Framework
- Výukový program Cucumber Selenium: Cucumber Java Selenium WebDriver Integration
- Úvod do softvéru Selenium WebDriver - Výučba selénu č. 8
- Ako čítať alebo zapisovať údaje z hárka programu Excel vo webovom ovládači selénu