BlogGroovy ako lepidlo medzi Canoo Webtest a Selenium – IV.

Groovy ako lepidlo medzi Canoo Webtest a Selenium – IV.

CWS_I._1V tretej časti sme napísali testovací scenár v jazykoch Java a Groovy. Pridali sme aj kód na interakciu Groovy s prostredím Canoo Webtest. V záverečnej časti si ukážeme, ako sa výsledný testovací scenár spustí v prostrediach Eclipse a Webtest.

IV-1

 

 

 

Na úspešné skompilovanie Groovy projektu, nezabudneme pridať jar-súbory Selenia (selenium-java-2.35.0.zip)  a Canoo WebTest do classpath projektu :

IV-2

Samotné spustenie programu sa vykoná pomocou „Run As => Groovy Script”

IV-3

… alebo ako Groovy konzola:

IV-4

Výsledok spustenia groovy projektu v prostredí Eclipse:

IV-5

Canoo WebTest :

Teraz to celé „zlepíme“ pomocou groovy tagu  a zapíšeme to v Canoo WebTest XML zápise nasledovne:

<?xml version="1.0"?>

<!DOCTYPE project[
<!ENTITY config         SYSTEM "../includes/config.txt"> 
]>

<project default="groovy">
    <target name="groovy">
	<webtest name="groovy">
	 &config;
	 <steps>				
	    <storeProperty description="Link name" name="link" value="FYZIKA"/>
		<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;

		  DesiredCapabilities capability = DesiredCapabilities.firefox();					
		  WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), capability);
		  driver.get("http://www.priklady.eu");
		  String sLinka = step.getWebtestProperty("link").toString()
		  WebElement element = driver.findElement(By.linkText(sLinka));
		  element.click();
		  String sTitle = driver.getTitle()
		  driver.close();
		  println("Page Title is: " + sTitle)
		  if (!sTitle.contains("fyziky")) {
		      throw new SPE("Problem found - test failed");
		  }					
		</groovy>
	    </steps>
	  </webtest>
	</target>
</project>

Všimnite si ako komunikuje Groovy kód s kontextom Canoo Webtest. WebTest uložil do property/premennej link hodnoty “FYZIKA”.

<storeProperty description=”Link name” name=”link” value=”FYZIKA”/>

Groovy ju prečítal : String sLinka = step.getWebtestProperty(“link”).toString()

a použil počas behu testu. Opačným spôsobom – step.setWebtestProperty() zafunguje aj komunikácia smerom z Groovy do Canoo  WebTest-u.

Po sustení testu z prostredia Canoo WebTest (ANT) vidíme postupne zľava:

  • Firefox s otvorenou webovou stránkou
  • Priebeh testu v okne ANT
  • WebTest monitor
  • Selenium server
  • Štandardný výsledok testu

IV-6

 IV-7

 

 

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

Čítaj ďalej: