what is hybrid framework selenium
Tento informativní výukový program vysvětluje, co je hybridní rámec, použití a komponenty selenového hybridního rámce a jak jej implementovat:
Co je to hybridní rámec?
Hybrid Driven Framework je kombinací rámce založeného na datech a klíčových slov.
Zde jsou klíčová slova i data z testu externalizována. Klíčová slova jsou udržována v samostatném souboru třídy Java a testovací data mohou být udržována buď v souboru vlastností / souboru Excel / lze použít poskytovatele dat rámce TestNG.
=> Podívejte se sem a podívejte se zde na AZ tréninky selenu.
Co se naučíte:
bezplatný online test pro ruční testování
Úvod do hybridního rámce
Zde je videonávod:
Hybrid Driven framework je většinoupoužívají manuální testeři, kteří nemajímnoho znalostí programovacích jazyků. Tito lidé se mohou jen podívat na klíčová slova, testovací data, úložiště objektů a hned začít vytvářet testovací případ, aniž by museli cokoli v rámci kódovat.
Součásti hybridního systému
Komponenty hybridního rámce jsou podobné komponentám rámce řízeného klíčovým slovempřičemž všechna testovací data i klíčová slova jsou externalizována, takže se skript objeví v obecnější podobě
- Knihovna funkcí
- Excel list pro uložení klíčových slov
- Šablona návrhu testovacího případu
- Úložiště objektů pro prvky / lokátory
- Testovací skripty nebo skript ovladače
# 1) Knihovna funkcí
Pro každou akci uživatele se vytvoří metody definované uživatelem. Jinými slovy, klíčová slova jsou vytvořena v souboru knihovny.
Například: Vezměme si instanci pro automatizaci níže uvedených testovacích případů.
Testovací případ č | Popis | Zkušební kroky | Očekávaný výsledek | ||
---|---|---|---|---|---|
AssertElement | xpath | // div (obsahuje (@ id, 'usericon')) | Zobrazeno | ||
1 | Ověřte přítomnost loga Amazon | 1. Zadejte URL - https://www.amazon.com | Logo Amazon by mělo být zobrazeno na domovské stránce | ||
dva | Ověřte platné přihlášení | 1. Zadejte URL - https://www.amazon.com 2. Klikněte na odkaz „Přihlásit“ 3. Zadejte platný e-mail 4. Klikněte na pokračovat 5. Zadejte platné heslo 6. Klikněte na SignInButton | Ikona uživatele by měla být na domovské stránce | ||
3 | Neplatné přihlášení | 1. Zadejte URL - https://www.amazon.com 2. Klikněte na odkaz „Přihlásit“ 3. Zadejte neplatný e-mail 4. Klikněte na pokračovat | Tato chybová zpráva by měla obsahovat „nelze najít účet“ |
Nejprve jsou analyzovány testovací případy a jejich testovací kroky a jsou zaznamenány jeho akce.
Řekni, dovnitř TC 01: Ověřte přítomnost loga Amazon - akce uživatele budou: Zadejte adresu URL
v TC 02: Ověřte platné přihlášení - uživatelské akce jsou Enter URL, Click, TypeIn
v TC03: Ověřte neplatné přihlášení - uživatelské akce jsou Enter URL, Click, TypeIn
Nyní bude soubor knihovny vytvořen s klíčovými slovy definovanými pro každou akci, jak je uvedeno níže:
nejlepší špionážní aplikace pro mobilní telefony
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) List aplikace Excel pro ukládání klíčových slov
Klíčová slova, která jsou vytvořena v souboru knihovny, jsou uložena v listu aplikace Excel s popisem pro kohokoli, kdo používá tento rámec k porozumění.
# 3) Navrhněte šablonu testovacího případu
Pro rámec je vytvořena šablona Test Case. Neexistuje žádná konkrétní šablona, kterou byste měli sledovat. Podle hybridního rámce by měla být externalizována jak testovací data, tak klíčová slova. Podle toho se vytvoří šablona. Například:
Pro testovací případ 2 - Ověřte platné přihlášení
Zkušební kroky | Typ lokátoru | Hodnota lokátoru | Testovací data | AssertionType | Očekávaná hodnota |
---|---|---|---|---|---|
zadejte URL adresu | https://www.amazon.com | ||||
Klepněte na | xpath | // div (obsahuje (@ id, 'SignIn')) | |||
vepište | xpath | // div (obsahuje (@ id, 'email')) | test@gmail.com | ||
Klepněte na | xpath | // div (obsahuje (@ id, 'pokračovat')) | |||
vepište | id | Heslo | Heslo @ 123 | ||
Klepněte na | id | Přihlásit se |
Podobně jsou testovací kroky vyplněny pro každý testovací případ na samostatném listu.
# 4) Objektové úložiště pro prvky
Pro všechny prvky na webové stránce je udržováno samostatné úložiště. Každý WebElement je označen názvem následovaným jeho hodnotou v úložišti objektů (v tomto případě se jedná o soubor vlastností). Šablona testovacího případu bude obsahovat název objektu a jeho hodnota je převzata z úložiště, jak je uvedeno níže:
Zde je LoginLink název objektu a jeho hodnota se čte z OR.properties jako ‘// div (obsahuje (@id,’ SignIn ’))
Podle toho bude kód pro čtení hodnoty z ObjectRepository zahrnut do skriptu Keywords.java
Například Soubor knihovny: zvažte akci „kliknutí“ v souboru 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žiště pro testovací data v testovacích případech
Ukážu vám jednoduchý příklad toho, jak jsou všechna testovací data obsažená ve skriptu externalizována, aby byl rámec zobecněn.
- Externalizace testovacích dat ze šablony testovacích případů:
Podobně se testovací data načítají také ze souboru vlastností.
špionážní aplikace pro mobilní telefony pro Android
- Objektové úložiště pro testovací data v obecném skriptu
Další obecná data, jako je název prohlížeče, umístění spustitelného ovladače, název testovacího případu atd., Lze také externalizovat v samostatném úložišti.
Ve výše uvedeném příkladu je parametr prohlížeče externalizován v souboru vlastností - Basic.properties.
- Předávání testovacích dat ze sady TestNG Suite:
TestData lze také předat ze souboru sady TestNG do metody.
Používáme značku nazvanou v souboru TestNG.xml těsně nad třídou, kde se používá.
Syntax:
Jakmile je testovací sada zadána s názvem parametru a jeho hodnotou, jsou ve skriptu použity poznámky k určení, která metoda používá tuto hodnotu. To je určeno pomocí anotace @Parameters.
Syntax: @Parameters ({„value_to_be_passed“})
Metodě lze také předat více parametrů jako:
Syntaxe:
@Parameters({“Chrome”}, {“ TestCase.xls”}, {“ chromedriver.exe”}) public void init(String Browser, String SheetName, String DriverLocation){ ….. …… ………. }
Toto se nevztahuje na více hodnot stejného parametru, trvá to jen několik hodnot různých parametrů.
# 5) Skript ovladače
Obsahuje hlavní logiku pro načtení všech testovacích případů z excelového listu šablony testovacích případů a provede odpovídající akci čtením ze souboru knihovny. Skript je navržen na základě vytvořené šablony testovacích případů.
Závěr
Hybridní rámec lze tedy vytvořit a použít k automatizaci jakékoli aplikace. To zase sníží počet hodin strávených skriptováním automatizačního kódu, protože jednou vytvořený rámec lze použít k automatizaci více aplikací.
Podobně lze rámce vytvořit podle potřeb projektu a použít je pro účely automatizace.
Doufáme, že se vám série informativních tutoriálů o selenu líbila!
=> Podívejte se na VŠECHNY výukové programy selenu zde.
Doporučené čtení
- Rámec řízený daty v selenu WebDriver pomocí POI Apache
- Vytváření rámce selenu a přístup k testovacím datům z aplikace Excel - Selenium Tutorial # 21
- Úvod do rámce JUnit a jeho použití v selenovém skriptu - výuka selenu č. 11
- Jak používat rámec TestNG pro vytváření skriptů selenu - výukový program TestNG selenu č. 12
- Testování na základě dat nebo parametrizace pomocí Spock Framework
- Cucumber Selenium Tutorial: Cucumber Java Selenium WebDriver Integration
- Úvod do selenu WebDriver - Selenium Tutorial # 8
- Jak číst nebo zapisovat data z listu aplikace Excel do webového ovladače selenu