Blog Groovy ako lepidlo medzi Canoo Webtest a Selenium – III.

Groovy ako lepidlo medzi Canoo Webtest a Selenium – III.

V druhej časti som sľúbil, že sa podrobnejšie pozrieme na kódy v Jave, Groovy a že podrobnejšie popíšem postupy integrácie Selenia do Canoo WebTest.

Poďme teda pekne po poriadku. Selenium je možné stiahnuť z jeho domáceho webu.

 

 

 

III.-2_selenium

Pre naše účely je potrebný download súborov (čísla verzií sa môžu v čase meniť):

  • selenium-server-standalone-2.35.0.jar – server, ktorého beh je potrebný na spúštanie testov
  • selenium-java-2.35.0.zip – potrebné jar súbory potrebné k písaniu testov

Selenium server spustíme príkazom:

Java – jar selenium-server-standalone-2.35.0.jar
 

 

III.-3_selenium

Teraz poďme na testovacie kódy v ich jednotlivých modifikáciách [Java, Groovy, WebTest].

JAVA:

import java.net.MalformedURLException;
import java.net.URL;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;

public class selenium {

	public static void main(String[] args) {
		DesiredCapabilities capability = DesiredCapabilities.firefox();
		try {
			WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), capability);
			driver.get("http://www.priklady.eu");
			WebElement element = driver.findElement(By.linkText("FYZIKA"));
			element.click();
			System.out.println(driver.getTitle());
			driver.close();
		} catch (MalformedURLException e) {
			e.printStackTrace();
		}
	}

}
 

Tento kód postupne vykoná nasledujúce akcie:

  • Otvorí Firefox
  • Naviguje na stránku priklady.eu – driver.get(“http://www.priklady.eu”).
  • Klikne na link „FYZIKA“ – element.click().
  • Vypíše na konzolu titul stránky
  • Zatvorí Firefox – driver.close().

Rovnaký kód v jazyku Groovy, v ktorom pribudol záverečný test na výskyt reťazca „fyziky“ v titulku stránky.

Groovy:

import java.net.MalformedURLException;
import java.net.URL;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import com.canoo.webtest.engine.StepFailedException as SPE; 

class gselenium {

    static main(args) {
        DesiredCapabilities capability = DesiredCapabilities.firefox()
        try {
	     println("Test started ... ")
            WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), capability)
            driver.get("http://www.priklady.eu")
            WebElement element = driver.findElement(By.linkText("FYZIKA"))
            element.click()
			String sTitle = driver.getTitle()
			driver.close();
			println("Page Title is: " + sTitle)			
			if (!sTitle.contains("fyziky")) {
			    println("Test failed")
			    throw new SPE("Problem found - test failed")
			}
			println("Test OK")
        } catch (MalformedURLException e) {
	     println("Test failed")
            throw new SPE("Problem found - test failed")
        }
    }
}

Pomocou triedy „StepFailedException” zo súboru webtest.jar som pripravil budúcu komunikáciu groovy kódu s Canoo WebTestom. Ak totiž potrebujeme oznámiť Canoo WebTestu, že test nedopadol dobre, a že teda nechceme, aby sa test vykonával ďalej, vyhodíme StepFailedException – čim zastavíme vykonávanie testu a zobrazíme výsledky testu so zlyhaním v kroku <groovy>.

V poslednej časti tejto série si ukážeme ako Groovy kód „zlepíme“ s testovacím scenárom v prostredí  Canoo Webtest. Takto upravený skript spustíme v prostrediach Eclipse a Webtest.


Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.



Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.

Roman Hesteric
Roman Hesterichttp://www.priklady.eu
Pracuje ako QA Architekt v Swiss Re. Predtým CTO pre Java a .Net aplikácie. Autorizovaný spolupracovník na projekte Canoo Webtest. Držiteľ certifikátov MCTS a MCPD pre SharePoint server. V IT pracuje 25 rokov, od starého dobrého Turbo Pascalu od Borlandu, cez Javu, až po C#. Administrátor matematického portálu www.priklady.eu

Head of Engineering | REMOTE | Gaming | Americkí mentori

Pre mladý startup vyvíjajúci softvér, ktorý prispieva hráčom k lepšiemu zážitku z hrania, hľadáme Head of Engineering. Založili ho dvaja...

GIS/Lidar Špecialist

Chceš robiť niečo, čo robí len málokto na Slovensku? Jediná firma na Slovensku, ktorá prevádzkuje vlastné lietadlo pre zber údajov...

Automation Tester

Máš skúsenosti s automatizovaným testovaním? Pre Automatizovaného testera máme príležitosť v oblasti digitálneho bankovníctva. Ide o projekt na kontrakt s odmenou...

Java Junior/Medior Developer

Osamostatni sa a pracuj sólo! Práve teraz je tu príležitosť pre Junior/Medior Java Developera pracovať na projekte pre medzinárodnú...

MS BI Developer / REMOTE

Sprav krok vpred s novým projektom v oblasti bankovníctva. Ide o projekt na kontrakt s dĺžkou trvania 2 roky. Odmena...

Business Development Manager

Máš skúsenosť s aktívnymi akvizíciami SW riešení pre banky/poisťovne? Pre stabilnú československú spoločnosť hľadáme Business Development Managera, ktorý sa vyzná...

Julia Developer / REMOTE

Projekt pre nadšencov Julia a machine learning. Pre spoločnosť, ktorá používa matematické metódy a metódy AI / ML na...

Simona Obrtáčová: Je dôležité nevzdať sa hneď pri prvej prekážke

Simona pracuje ako aplikačná inžinierka pre ABB s.r.o., kde vytvára robotizované pracoviská. Pochádza z malej dediny na Orave a tomu, že...

Čo sa udialo na internete v roku 2020?

Slovensko sa v roku 2020 naučilo niekoľko nových slovíčok a nadobudlo mnoho nových digitálnych zručností. Pojmy ako videokonferencia, práca na diaľku /...

Toto sme stihli v roku 2020!

Rok 2020 bol určite neobyčajným rokom pre mnohých nielen z oblasti IT. Presunuli sme sa z kancelárií a open...

Čítaj ďalej:

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.