Webtest v groovy pomocou Maven priamo v Eclipse

Canoo WebTest testovací scenár je v skutočnosti  “iba” súbor Ant-taskov a preto nás už určite neprekvapí, že zápisy testovacích Canoo WebTest scenárov sú tradičné XML zápisy.  Ak však nechcete zapisovať testovacie scenáre v formáte XML, je tu ďalšia alternatíva. Groovy a Maven. A to priamo v prostredí Eclipse.

Začneme stiahnutím verzie Maven [http://maven.apache.org/download.html]. V čase písania tohto článku je aktuálny „apache-maven-3.1.0“. Po nastavení systémovej „path“ na „X:\apache-maven-3.1.0\bin\“ začneme vytvorením Maven projektu.

mvn archetype:create -DarchetypeGroupId=org.apache.maven.archetypes -DgroupId=my.domain -DartifactId=myWebTestApp

po ukončení ktorého vznikne Maven-projekt myWebTestApp.

 Webtest v groovy pomocou Maven priamo v Eclipse

Zeditujeme vygenerovaný pom.xml v troch krokoch.

  1. Pridáme WebTest ako „dependency“:
    <dependency>  
      <groupId>com.canoo.webtest</groupId>  
      <artifactId>webtest</artifactId>  
      <version>3.1-SNAPSHOT</version>  
    </dependency>
  2. Pridáme referenciu na Maven-WebTest repository:
    <repositories>  
        <repository>  
            <id>webtest_dependencies_snapshot</id>  
            <name>WebTest dependencies</name>  
            <url>http://webtest.canoo.com/webtest/m2-repo-snapshots</url>  
        </repository>  
    </repositories>
  3. Nakonfigurujeme GMaven plugin:
    <build>  
        <plugins>  
            <plugin>  
                <groupId>org.codehaus.groovy.maven</groupId>  
                <artifactId>gmaven-plugin</artifactId>  
                <version>1.0-rc-5</version>  
                <executions>  
                    <execution>  
                        <goals>  
                            <goal>compile</goal>  
                            <goal>testCompile</goal>  
                        </goals>  
                    </execution>  
                </executions>  
            </plugin>  
            <plugin>  
                <groupId>org.codehaus.mojo</groupId>  
                <artifactId>build-helper-maven-plugin</artifactId>  
                <executions>  
                    <execution>  
                        <id>add-test-source</id>  
                        <phase>generate-sources</phase>  
                        <goals>  
                            <goal>add-test-source</goal>  
                        </goals>  
                        <configuration>  
                            <sources>  
                                <source>src/test/groovy</source>  
                            </sources>  
                        </configuration>  
                    </execution>  
                </executions>  
            </plugin>  
        </plugins>  
    </build>

A pokračuejeme vytvorením Eclipse projektu.

mvn -Declipse.downloadSources=true eclipse:eclipse

Webtest v groovy pomocou Maven priamo v Eclipse

Počas vytvárania eclipse projektu sa z inernetu stiahnu aktuálne JAR súbory, ktoré nájdete v adresári „.m2“, nájdete ich napríklad v „c:\Documents and Settings\hesteric\.m2″. Ja som adresár .m2 premiestnil do adresára inštalácie Maven-u na disk F:\.

Downloadujeme Groovy plugin do prostredia Eclipse. Tento plugin má svoje „muchy“, ale je určite lepší ako nič.

Importujeme vytvorený Maven projekt do prostredia Eclipse.

 

Nastavíme premennú “M2_REPO” tak, aby ukazovala na adresár, obsahujúci potrebné JAR súbory, ktoré sa stiahli počas vytvorenia Maven projektu [f:\apache-maven-3.1.0\.m2\repository].

Webtest v groovy pomocou Maven priamo v Eclipse

Ak sme úspešne vykonali predchádzajúce kroky, môžeme začať s prvou groovy testovacou triedou.

Webtest v groovy pomocou Maven priamo v Eclipse

 

Webtest v groovy pomocou Maven priamo v Eclipse

Náš prvý groovy test, ktorý otestuje sme.sk by mohol vyzerať napríklad takto:

package my.domain

import com.canoo.webtest.WebtestCase  

/**
 * @author hesteric
 *
 */
 class MyFirstWebTest extends WebtestCase {   

     void testSme() {   
         webtest("Testujeme sme.sk") {   
             invoke url:"http://www.sme.sk", description: "Go to Sme.sk"
             verifyTitle "SME.sk" // tu test failuje …
         }   
     }                
 }

 

Spustíme ho ako RunAs->JUnit

Webtest v groovy pomocou Maven priamo v Eclipse

Webtest v groovy pomocou Maven priamo v Eclipse

 … a tu je výsledok:

 

ešte poznámka, že test neprešiel, pretože v title stránky je „SME.sk | denník SME – najčítanejšie spravodajstvo na Slovensku“ a nie ako je predpokladané v teste …

A tu je dôvod neúspechu nášho testu:

: Wrong document title found!. Expected value “SME.sk” but got “SME.sk | denník SME – najčítanejšie správy na Slovensku”, Step: VerifyTitle at :  with (taskName=”verifyTitle”) at com.canoo.webtest.steps.verify.VerifyTitle.doExecute(VerifyTitle.java:26)


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

Senior SAP Basis Consultant

Základné informáciePozícia: SAP Basis Consultant Pracovný pomer:  TPP, Živnosť Miesto práce: Pezinok, Home-Office Plat: od 3000+ EUR/Brutto/mesačnePopis práceposkytovanie služby inštalácie, konfigurácie,...

DBA Admin

Základné informáciePozícia: DBA Admin Pracovný pomer:  TPP, Živnosť Miesto práce: Pezinok, Home-Office Plat: od 2400 - 4000+ EUR/Brutto/mesačnePopis práce praca s databázovými...

Junior Technical Writer

Basic informationPosition: Junior Technical Writer Contract type: Full-Time employee Location: Bratislava, on-site Salary: from 1000 - 1400 EUR/ BruttoResponsibilities:Interviewing technical personnel...

QA/Testing Specialist – Automated Testing

Základné informáciePozícia: QA/Testing Specialist - Automated Testing Pracovný pomer:  TPP Miesto práce: Bratislava, on-site Plat: 1500 - 1900 EUR/Brutto/mesačnePopis prácenaplánovať a...

DevOps/SysAdmin Tech Lead

JOB Position: DevOps/SysAdmin Tech Lead Contract type: Full-time Location: Bratislava, on-site Salary: 3000 - 4000+ EUR/BruttoResponsibilities:team/tech leadership, prioritisation, 2 team members independent...

Junior/Senior Full Stack Developer / WEB Development for 150 countries

Basic informationPosition: Full Stack Developer Contract type: Full-Time employee or Contractor Location: Vienna (2-3 Days/Week On-Site) / 1 hour drive from...

Agile Project Manager / Scrum Master

JOB Position: Agile Project Manager / Scrum Master Contract type: TPP, Contract Location: Bratislava, Prague, Vienna Salary Junior: 1500 EUR/Brutto Salary Senior: 2200 EUR/Brutto Rate:...

Vieme kto je IT BLOGGER 2019

Súťaž IT Blogger 2019 sme v piatok 6.12.2019 oficiálne ukončili a prinášame vám vyhodnotenie a rozdáme ceny....

Milada Kováčová: Práca v IT nie je len o programovaní

Tentokrát sme sa rozhodli vyspovedať ďalšiu ženu v IT. Milada Kováčová pracuje v slovenskej softvérovej spoločnosti SOFTEC,...

Projekty prvej výzvy fondu SK-NIC sú schválené!

Po uzavretí výzvy Fondu SK-NIC na podporu malých projektov nás hodnotiaca komisia...

Čítaj viac:

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