Webové aplikace se staly nezbytnými pro podniky, které hledají pokročilé způsoby, jak se spojit se svým cílovým publikem v digitální sféře a sloužit mu. Vzhledem k důležitosti webových aplikací v dnešních obchodních operacích, bez ohledu na odvětví, je nutné je komplexně otestovat, aby bylo zajištěno, že nabízejí špičkové uživatelské prostředí.
Testování automatizace zrychluje životní cyklus vývoje softwaru. Při přijetí přístupu k vývoji založeném na chování (BDD) mohou dále na projektu aktivně spolupracovat různé zúčastněné strany, jako jsou vývojáři, QA a netechnické týmy.
Scénáře jsou psány na základě očekávaného chování softwaru a testuje se, zda odpovídá uvedeným scénářům.
Zdroj obrázku
Tyto scénáře jsou dokumentovány pomocí jazyka specifického pro doménu, jako je Gherkin. V každém testovacím scénáři se k popisu chování a očekávaného výsledku aplikace používají konstrukce přirozeného jazyka, které tvoří malé fráze podobné angličtině. To se provádí pomocí specializovaného softwarového nástroje, jako je Cucumber, který umožňuje provádění automatických akceptačních testů napsaných v Gherkin.
Co je Cucumber?
Cucumber je open-source testovací rámec, který podporuje Behavior Driven Development pro automatizované testování webových aplikací. Testy jsou nejprve psány ve formě jednoduchého scénáře, který popisuje očekávané chování systému z pohledu uživatele.
Cucumber, který se často používá pro akceptační testy, je napsán v Ruby, zatímco testy jsou psány v Gherkin, netechnický a člověkem čitelný jazyk.
Testování okurky a selenu: přístup ke spolupráci
Zatímco automatické testování selenu dodává vývojovému cyklu přesnost a rychlost, Cucumber přidává další výhodu k tomu, aby byla více spolupracující pro netechnické zúčastněné strany managementu. Cucumber je široce přínosný pro testování přijatelnosti uživatelů, kde jsou scénáře testování do značné míry ovlivňovány chováním, a posiluje testování automatizace.
Cucumber Framework
Cucumber framework se skládá hlavně ze tří hlavních částí – soubor funkcí, Definice kroků a soubor Test Runner.
Soubor funkcí
Samostatnou jednotku nebo jednu funkci (například přihlášení) pro projekt lze nazvat funkcí. Každá z těchto funkcí bude mít scénáře, které musí být testovány pomocí selenu integrovaného s okurkou. Soubor, který ukládá data o funkcích, jejich popisech a scénářích, které se mají testovat, se nazývá soubor funkcí.
Testy okurky se zapisují do těchto souborů funkcí, které jsou uloženy s příponou – „.feature“ . Souboru funkcí lze poskytnout popis, aby byla dokumentace čitelnější.
Příklad:
Funkce přihlášení na webu
Název souboru funkcí: userLogin .feature
Popis: Uživatel by měl mít možnost se přihlásit po zadání správného uživatelského jména a hesla do správných polí. Pokud je zadané uživatelské jméno a heslo správné, měl by být uživatel přesměrován na domovskou stránku.
Klíčová slova jako GIVEN, WHEN a THEN použitá k napsání testu v okurce se nazývají anotace.
- GIVEN uživatel přejde na přihlašovací stránku otevřením Firefoxu
- KDYŽ uživatel zadá správné < uživatelské jméno > A < heslo > hodnoty
- POTOM je uživatel přesměrován na t Domovská stránka
Definice kroků
Nyní, když jsou funkce zapsány do souborů funkcí, je třeba spustit kód souvisejícího scénáře. Chcete-li vědět, kterou dávku kódu je třeba spustit pro daný scénář, do obrázku vstoupí definice kroků. Soubor definice kroků ukládá mapovací data mezi každým krokem scénáře definovaným v souboru funkcí a kódem, který má být spuštěn.
Definice kroku mohou používat funkce Java i Selenium pro funkce Java napsané k mapování a soubor funkce do kódu.
Příklad:
package StepDefinition;import cucumber.api.java.en.Given;import cucumber.api.java.en.Then;import cucumber.api.java.en.When;public class Steps{@Given("^user navigates to the login page by opening Firefox$")//Code to Open Firefox Browser and launch the login page of application to define the GIVEN step of the feature@When("^user enters correct username and password values$")//take inputs for username and password fields using find element by xpath. Put the correct username and password values as inputs to define the WHEN step of the feature@Then ("^user gets directed to homepage$”)//Direct to the Homepage of the application as a result of correct username and password inputs in the WHEN step. This would define the THEN step of the feature
Test Runner File
Chcete-li spustit test, jeden potřebuje soubor Test Runner, což je třída Test Runner JUnit obsahující umístění definice kroku a další primární metadata potřebná k provedení testu.
Soubor Test Runner používá poznámku @RunWith () od JUnit pro provádění testů. Používá také poznámku @CucumberOptions k definování umístění souborů funkcí, definic kroků, integrací sestav atd.
Příklad:
Testovací třída běžeců v balíčku cucumberTest se soubory funkcí ve složce „src / test / Feature“ a soubory definice kroku ve složce „src / main / stepDefinition“.
Nastavení rámce Cucumber
Než prozkoumáte, jak Cucumber funguje a jak psát test selenu na okurku, pojďme nejprve zjistit, jak nastavit okurku.Instalace níže uvedených požadavků je vše, co uživatel potřebuje, aby mohl začít s automatickým testováním okurky.
Předpoklady pro nastavení okurky a selenu
- instalace Java
- instalace Eclipse IDE pro Java
- Install Maven
- Install Selenium Webdriver
- Install JUnit
- Install Cucumber
Jak napsat test v Cucumber pro automatizaci selenu?
Pokud vezmeme v úvahu scénář funkce přihlášení, vytvořme v Cucumber ukázkový test. Tento kód spustí scénář přihlášení popsaný v části Funkce a po zadání správného uživatelského jména a hesla otevře domovskou stránku webu.
Osvědčené postupy při testování okurek
Zde jsou některé z osvědčené postupy v testování okurek:
- Verze sklenic Cucumber-java, Cucumber-junit a Cucumber-core by měly být stejné pro bezproblémové připojení.
- Přidání po připojení kódu ke snímání snímků obrazovky, když test selže, může pomoci diagnostikovat problém a ladit ho.
- Pomocí značek můžete organizovat testy na základě definice značky. To pomáhá v případech, kdy všechny testy nemusí být prováděny pokaždé. Takové testy lze označit pomocí značek a spustit pouze v případě potřeby. To šetří čas a kapacitu systému a prostředků na zpracování.
- Jako vždy je důležité spouštět testy Cucumber Selenium na skutečných prohlížečích a zařízeních. BrowserStack nabízí cloudovou selenovou mřížku 2000+ skutečných prohlížečů a zařízení pro účely testování – živých i automatizovaných. Jednoduše se zaregistrujte, vyberte požadovanou kombinaci zařízení a prohlížeče a OS a začněte zdarma testovat webové stránky.
Spusťte zdarma testy selenu
Automatizace testů je naprosto nezbytná pro držet krok s rostoucími požadavky na rychlejší dodání a optimální kvalitu testerů. Cucumber framework v Selenium umožňuje psát testovací scénáře pomocí konstruktů přirozeného jazyka, které popisují očekávané chování softwaru pro daný scénář, což je ideální pro uživatelské akceptační testování.
A konečně, testování webových stránek na reálném zařízení cloud je jediný způsob, jak zajistit úplnou přesnost výsledků. Vždy se tedy rozhodněte pro skutečné testování zařízení, abyste mohli komplexně ověřit výkon webu, kompatibilitu mezi prohlížeči a kvalitu uživatelského zážitku, který nabízí.