Preskočiť menu

Aligátor, Fórum, Pripojsa.sk, Servis, Speedmeter, Webhosting, Weblogy.sk
banner HP

Číta nás cez 130 tisíc ľudí | Autori | O Inet.sk | OZ IPV | Referáty | Reklama | RSS

Google webdriver – vytvorte si vlastného testovacieho robota, časť II.

18. 6. 2008, Programovanie, Roman Hesteric, 0 komentárov

Google webdriver - v Jave testujeme webové aplikácie pomocou reálnych prehliadačov Firefox a Internet Explorer.

Google webdriver – Inštalácia firefox pluginu

 

   1. Vytvoríme nový profil vo firefox-e.

  • firefox -ProfileManager, pričom "firefox" – je plná cesta k programu firefox.exe

  2. Klikneme na button „Create Profile“.

  3. Zadáme meno profilu - WebDriver a odklikáme wizarda, pričom akceptujeme defaultné nastavenia.

  4. Naštartujeme firefox  v novovytvorenom profile.

  • firefox -ProfileManager a dvojklik na profil WebDriver
  • firefox -P WebDriver

Po štarte firefox-u  v novom profile naň dragneme plug-in [webdriver-firefox.xpi], ktorý sa nainštaluje. Tým sme zabezpečili inštaláciu pluginu a môžeme začať písať prvého testovacieho robota, ktorý na testovanie webových stránok použije firefox.

 

Úspešnú inštaláciu WebDriver pluginu overíme v menu Tools->Add-ons

 

 

Google webdriver – Testovací robot, využívajúci firefox plugin

 

Teraz napíšeme testovací scenár, ktorým bude, ako inak, Java kód. Ten uložíme ako triedu, ktorú nazveme „Test2.java“. 

package com.googlecode.webdriver.example;

 

import java.util.List;

import com.googlecode.webdriver.By;

import com.googlecode.webdriver.WebDriver;

import com.googlecode.webdriver.WebElement;

import com.googlecode.webdriver.firefox.FirefoxDriver;

 

public class Test2 {

    @SuppressWarnings("unchecked")

    public static void main(String[] args) throws Exception {

        // Firefox driver podporuje javascript

        System.setProperty("webdriver.firefox.useExisting", "true");

        WebDriver driver = new FirefoxDriver();               

       

        // podme na Google Suggest home page

        driver.get("http://www.google.com/webhp?complete=1&hl=en");

               

        // Zadajme "Cheese"

        WebElement query =

        driver.findElement(By.xpath("//input[@name = 'q']"));

        query.sendKeys("Cheese");


        // Pockame 2 s.

        Thread.sleep(2000);


        // tu je zoznam navrhov

        List<WebElement> allSuggestions =

driver.findElements(By.xpath("//td[@class='google-ac-c']"));

        for (WebElement suggestion : allSuggestions) {

            System.out.println(suggestion.getText());

        }

        // klikneme na Search

        driver.findElement(By.xpath("//input[@name='btnG']")).click();       

        System.out.println(driver.getTitle());

     }

}

 

Nášho novovytvoreného testovacieho robota spustíme rovnako ako triedu FirstTest.java s tým rozdielom, že nepoužijeme Run As, ale Debug As. Každý krok v debug móde Eclipse je efektne vizualizovaný v okne firefox-u, ktorý sa automaticky spustil v profile WebDriver.

 

 

Google webdriver – Testovací robot, využívajúci Internet Explorer

 

Pred prvým použitím InternetExplorerDriver-a je potrebné uložiť „InternetExplorerDriver.dll“ niekam do systémovej cesty [path]. Tým splníme základný predpoklad spustenia testovacieho robota, ktorý bude využívať InternetExplorerDriver.

 

Teraz napíšeme ďalší testovací scenár, ktorý bude takmer totožný s kódom v Test2.Java. Rozdielom bude iba inštancia interface WebDrive, pričom v tomto prípade použijeme InternetExplorerDriver. Triedu uložíme ako  „Tes3.java“.

package com.googlecode.webdriver.example;

 

import java.util.List;

import com.googlecode.webdriver.By;

import com.googlecode.webdriver.WebDriver;

import com.googlecode.webdriver.WebElement;

import com.googlecode.webdriver.ie.InternetExplorerDriver;

 

public class Test3 {

    @SuppressWarnings("unchecked")

    public static void main(String[] args) throws Exception {

        // Instancia Internet Explorer-a s javascriptami

        WebDriver driver = new InternetExplorerDriver ();               

       

        // podme na Google Suggest home page

        driver.get("http://www.google.com/webhp?complete=1&hl=en");

               

        // Zadajme "Cheese"

        WebElement query =

                            driver.findElement(By.xpath("//input[@name = 'q']"));

        query.sendKeys("Cheese");


       // Pockame 2 s.

        Thread.sleep(2000);

 

        // tu je zoznam navrhov

        List<WebElement> allSuggestions =

driver.findElements(By.xpath("//td[@class='google-ac-c']"));

       

        for (WebElement suggestion : allSuggestions) {

            System.out.println(suggestion.getText());

        }  

        // klikneme na Search     

        driver.findElement(By.xpath("//input[@name='btnG']")).click();       

        System.out.println(driver.getTitle());

     }

}

 

Novovytvoreného testovacieho robota spustíme rovnako ako Test2.java opäť použitím Debug As. Každý krok v debug móde Eclipse je efektne vizualizovaný v okne Internet Explorera. Tu je ale treba poukázať na chybičku tohto riešenia. Ak totiž v debug móde vykonáme riadok obsahujúci „.sendKeys“, parameter sendKeys sa pošle do práve fokusovaného okna – čiže do editora Eclipse a nie do Internet Explorera, ako by sme právom očakávali. Je však ešte potrebné povedať, že revision 280, ktorú som použil pri písaní tohto článku bola relatívne stará a uvedený problém by sa vo vyšších verziách nemal vyskytnúť.

 

 

V tabuľke sú uvedené charakteristiky jednotlivých implementácií webdriverov.

 

Meno

OS

Rýchlosť

HtmlUnitDriver

Všetky

vysoká

FirefoxDriver

Všetky

vysoká

InternetExplorerDriver

Windows

pomalá

SafariDriver

Mac OS X

stredná

 

Nabudúce:

  • Google webdriver - Vytvárame vlastné testovacie kroky

 

Podobné články na Inet.sk

Diskusia k článku

Dátum Meno Predmet
Prejsť na diskusiu | Pridať komentár
Diskusia momentálne neobsahuje žiadne komentáre

Vyhľadávanie

Platená reklama

Textová reklama

notebook.pda.sk
E-shop zameraný na predaj mobilných zariadení. Hlavnou ponukou sú notebooky značky Apple, DELL a príslušenstvo.

EuroPhoto : Bratislava Photo | Vienna Photo | Prague Photo | London Photo | Paris Photo
Croatia | Bratislava Property
PROMA nábytok: najväčšia výroba: kuchynské linky, kuchyne a kuchynský nábytok. Pracovné dosky, úchytky, grafický 3D dizajn.

MSkozmetika: internetový predaj parfémov, kozmetiky a bižutérie. Mega parfuméria na webe. Značková a luxusná kozmetika.

Newsletter


Inet.sk – Internetový denník, ISSN 1336-1899
Copyright 2002 – 2010 Inet.sk, s. r. o., Všetky práva vyhradené, Neprešlo jazykovou úpravou

Partneri:
123velkoformatovatlac.sk Aaavizitky.sk Bilancia skrývky BiznisHosting.sk CinemaView.sk Digitálne fotoaparáty Digitlac.sk Fotografie Grafika.sk HrajSa.sk Katalog Pozri.sk Kusi.sk Manga.sk Notebooky HP Predaj PC komponenty Reality Aaainfo.sk Reklama.sk Sladká kytica StiahniTo.sk Surf.sk Toshiba PC akcia Úvery Aaainfo.sk Zájazdy