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

Python Developer s možnosťou naučiť sa Julia

Chceš pracovať na dlhodobom, technologicky inovatívnom projekte v oblasti prediktívneho modelovania? Pre spoločnosť, ktorá používa matematické metódy a metódy AI...

Junior Scala Developer

Nechceš denne dochádzať do práce? Chcel by si byť súčasťou dlhoročného startupu, len senior ľudia (žiadni študenti) a pracovať...

Scala Medior/Senior Developer

Nechceš denne dochádzať do práce? Chcel by si byť súčasťou dlhoročného startupu, len senior ľudia (žiadni študenti) a pracovať...

Data Enginner / REMOTE

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

React Developer

Projekt je veľmi inovatívny a bude určovať trendy v oblasti bankovníctva pre enterprise klientov v Európe. Budú ťa viesť...

Backend/Node.js Developer / REMOTE

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

DevOps Engineer / REMOTE

Si DevOps Enginner, zvládneš programovanie v Pythone alebo Golang? Pre spoločnosť, ktorá sa zaoberá pokročilou analýzou dát a automatizáciou...

Qubit Konferencia na kybernetickú bezpečnosť po prvýkrát na Slovensku

Po Prahe, Sofii a Belehrade sa Qubit presunie do krásnych Tatier! 1. ročník konferencie na kybernetickú bezpečnosť v Qubit štýle...

Soňa Pochybová: Ak ťa niečo trápi, alebo niečomu nerozumieš, ozvi sa!

Soňa má 36 rokov a pracuje ako Lead Software Developerka pre Národnú Banku Slovenska. Hoci pôvodne vyštudovala fyziku, ako...

GIRL´S DAY už po ôsmy raz priblíži stredoškoláčkam svet technológií

Už po ôsmy raz sa uskutoční celoslovenské podujatie GIRL´S DAY, ktoré prepája IT firmy a organizácie so stredoškoláčkami po...

Čí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ť.