Roman Hesteric / 20. 05. 2008, 00:00
Séria článkov o open-source nástroji na automatizované testovanie webových aplikácií - Canoo WebTest. Charakteristika, inštalácia, prvé spustenie.
+ [plus]
- [mínus]
Jednoduchosť
WebTest má jednoduchú syntax – ktorá je natoľko intuitívna, že je ľahko zrozumiteľná aj začínajúcim používateľom.
Rýchlosť
WebTest počas behu nesťahuje z testovaných stránok obrázky, alebo CSS a tým pádom nepotrebuje renderovať testované stránky, čim sa zvýši rýchlosť behu testu.
Výborný reporting
Poskytuje vynikajúci reporting formou náhľadu HTML testovanej stránky s linkami na jednotlivé odpovede od servera, prípadne s linkami na chyby ku ktorým došlo počas behu testu.
Spustiteľný všade
WebTest je java aplikácia, takže pobeží všade, kde pobeží Java. Onedlho okrem mobilného telefónu snáď aj na mikrovlnej rúre.
Nepotrebuje monitor
Znamená, že počas spustenia testov je vám počítač k dispozícii a vy môžete počas vykonávania testov pokračovať v svojej práci. Pravda, pokiaľ to pamäť a zaťaženie počítača dovolí.
Ľahké rozširovanie
Vo WebTest-e môžete vytvárať svoje vlastné test-kroky pomocou Javy, alebo jazyka Groovy a používať celý API HtmlUnit-u a commons-httpclient-a na jeho prispôsobenie vašim špecifickým požiadavkám.
Nekomplikovaná integrácia
Skripty Webtestu sú skripty programu Ant, ktorý tu podrobne opisovať nebudem. To znamená že tieto môžete ľahko integrovať do rôznych integračných nástrojov [Cruise Control], alebo build nástrojov [Maven].
Neakceptuje príliš zle formátované HTML
"Reálne" prehliadače akceptujú zle naformátovaný HTML a niektoré chyby jednoducho prehliadajú. Je to dobre, alebo zle? Autori Webtest-u sa týmto spôsobom snažia o to, aby korektné webové aplikácie používali korektný a čistý HTML kód.
Javascript implementácia nie je taká dobrá ako v "normálnom" prehliadači
WebTest používa jadro programu Mozilla Firefox, alebo Internet Explorer pri vykonávaní JavaScript-ov. Táto činnosť je však len simulovaná [Mozilla Rhino]. Simulácia javascriptov je však neustále vyvíjaná a vylepšovaná.
Canoo Webtest je napísaný v jazyku Java [JDK 1.5] využívajúci Ant [verzia 1.7 alebo novšia, ktorý je súčasťou inštalácie].
Stavebné prvky Canoo WebTest:
Stiahnite si poslednú verziu z oficiálnej stránky [http://webtest.canoo.com/webtest/manual/Downloads.html ]
Rozpakujte súbory do vami zvoleného adresára – ktorý sa stane „WebTest home“
Podadresár lib/ adresára WebTest home obsahuje všetky java knižnice potrebné k behu Canoo Webtestu. Podadresár bin/ adresára WebTest home obsahuje skripty pre Unix a Windows, ktorými sa štartuje Webtest.
Nastavenie systémovej cesty – pridanie bin/ adresára do systémovej premennej “path” [Windows]: (WinKey + Pause), vyberte “Advanced tab” a cez button “Environment Variables” editujte PATH premennú. Napríklad: "C:Program FilesWebtestbin";%PATH%
Nastavenie systémovej cesty – pridanie bin/ adresára so systémovej premennej “path” [Unix]:
Napríklad:
WebTest obsahuje zabudovanú utilitu na vytvorenie nového projektu, ktorý obsahuje príklady testov priamo spustiteľných a ktoré môžu následne slúžiť ako vzor pre prvé skutočné testovacie skripty. V príkazovom riadku pre daný operačný systém zadajte:
C:> webtest -f cestakwebtesthomeadresáruwebtest.xml wt.createProject
Po zadaní mena demo projektu sa vytvorí demo project so zadaným menom. Ak meno nezadáte vytvorí sa pod default menom “myWebTestProject”.
Úspešné vytvorenie projektu sa objaví v nasledujúcom výpise na konzole:
C:> webtest -f WebTestwebtest.xml wt.createProject
Buildfile: WebTestwebtest.xml
wt.init:
wt.createProject:
[input] Enter your WebTest project name: [myWebTestProject]
[echo]
[echo] Your WebTest project >myWebTestProject< has been successfully created with some demo
[echo] tests to get started.
[echo] You can now just go to >c:myWebTestProject< and run ant.
[echo]
BUILD SUCCESSFUL
Total time: 7 seconds
Ak používate proxy server, na prvé úspešné spustenie nastavte proxy server v súbore build.xml. V súbore build.xml stačí odkomentovať pripravené proxy nastavenie a zadať vaše proxy nastavenie.
Build.xml:
Activate this if you are behind a proxy and want to test a server outside your local network
See http://ant.apache.org/manual/OptionalTasks/setproxy.html
<setproxy proxyhost="myProxy" proxyport="X.XX.XXX.XXX"/>
Potom spustite príkaz "webtest", pričom sa počas behu testov zobrazí okno WebTest Monitora a Webtest konzoly.
Na konzole uvidíme:
C:>myWebTestProject>webtest
...
wt.openResultFile:
[echo] Opening result file C:myWebTestProjectresultswebtestResults.html with cmd
wt.full:
BUILD SUCCESSFUL
WebTest monitor zobrazuje priebeh a výsledky jednotlivých testov:
Po ukončení testu sa objaví HTML report:
Zobrazenie jednotlivých krokov testu s pohľadom na “result-page” [ctrl+myš]:
ScreenCast - demo vytvorenia a spustenia prvého Canoo Webtest projektu je k dispozícii tu:
Nabudúce:
Copyright © 2002 - 2013 inet.sk, s. r. o. | Všetky práva vyhradené | Neprešlo jazykovou úpravou | ISSN 1336-1899
Využívame kvalitný webhosting za rozumnú cenu od Inet.sk