Webdriver jellemző az alapvető parancsokat - a tudásbázis

Ebben a cikkben szeretnék
így leírás és példák az alap (véleményem szerint) parancsokat Szelén
2.0 WebDriver automatizált funkcionális tesztelése
web-alapú alkalmazás. Ebben a cikkben azt fogja mondani, hogy mi a WebDriver. ebben
Megjegyzés: Láthatjuk egy példa egy egyszerű teszt script
WebDriver és alapvető háttér információkkal eszköz
automatizált tesztelés. Példák láthatók a C #
Pilóta, könyvtárak verzió - 2.9.0.

Az új verzió a szelén szervezett javított kereső elemek
oldalt. Mielőtt elérésével oldalelemek először
hívja a keresési módszer típusának meghatározásával lokátor. Van is egy módszer
keresőcsoportban elemek findElements (By).
A WebDriver kapható dolgozni a következő típusú helyzetjelzők: id, név,
XPath tagName, className, cssSelector, linktext, partionalLinkText.
Példa inicializálás és Keresés elemtípusok különböző
lokátorok:

Mint a Szelén 1,0. Háromféle alapvető parancsokat lehet azonosítani a szelén WebDriver:


  • Hozzászólások - funkcionális hatás weboldal elemek vagy
    böngészőt. Például, a mezők a töltés, préselés, és mások;
  • Check - az ellenőrzések elvégzéséért a tesztoldal. Például,
    annak ellenőrzése, hogy egy sajátos formáját mező jelentése a fenti, vagy
    ellenőrizze az ablak címét, stb.;
  • Elvárások - elvárások a szervezet bizonyos események
    vagy egy oldalt (például vár oldal betöltése vagy
    várjon betöltés ajax kérések a megjelenése egy bizonyos oldalon,
    elem, stb).

navigációs parancsok. A navigációhoz találkozik Navigálás osztályban.

Munka böngészőablakot:

  • void close () - az aktuális ablak bezárásához. Bezárja a böngészőt, ha nincs több nyitott ablakok;
  • void megsemmisíteni () - tagja System.IDisposable. Ezzel a módszerrel el lehet távolítani, hogy kiadja, vagy vissza nem felügyelt erőforrások
  • Kezelése () - lehetővé teszi, hogy módosítsa az illesztőprogram beállításait;
  • void Quit () kimenete a vezető, közel az összes ablakot hozzárendelve;
  • OpenQA.Selenium.IWebElement FindElement (OpenQA.Selenium.By által)
    - Megkeresi egy elemet az oldalon. Paraméter jelzi a kereső
    elem. Visszaadja az első elemet, amely kielégíti a feltételt
    Search. Példák a fent megadott;
  • System.Collections.ObjectModel.ReadOnlyCollection FindElements (OpenQA.Selenium.By által) - ugyanaz, mint a FindElement, csak vissza az összes elem, amelyek megfelelnek a keresési feltételt;
  • OpenQA.Selenium.ITargetLocator SwitchTo () - közötti váltás popup- E, Alert, ablakok;
  • húr PageSource - visszaadja a tartalmát az utolsó betöltött oldal;
  • húr Cím - visszaadja a címe az aktuális oldal;
  • string url - beállítja vagy visszatér az URL-t az aktuális ablak;
  • húr CurrentWindowHandle - vissza hivatkozás az aktuális ablak;
  • System.Collections.ObjectModel.ReadOnlyCollection WindowHandles - vissza linkek minden böngészőablakot.

Hozzáférés a parancsokat IWebDriver felületen. A következő egyszerű példa:

Ellenőrizze a címe az aktuális oldal:

Ellenőrizze, hogy van egy szöveg „keresés eredménye” az aktuális oldalon:

Példák munka popup- E riasztja. Az ablakok közötti váltáshoz, popup- E riasztások kell használni SwitchTo () metódust. Együttműködik a Alert osztály IAlert.

Válasszon egy keretet név szerint:

Válassza ki az ablak neve:

Hozzászólások oldal elemei:


  • void Click () - egyszeri megnyomásával az elem;
  • húr getAttribute (string attributeName) - visszaadja az attribútum értékét;
  • húr GetCssValue (string propertyName) - visszaadja az értékét a CSS elem;
  • void SendKeys (string szöveg)
    - írja be a szöveget a dobozokat. Amikor dolgozik szöveges mezők lehetnek
    használja a funkció gombok, munkájuk biztosít Keys osztályban. Például: element.SendKeys ( "SDS" + Keys.Up);
  • void Submit () - küldje el az űrlapot a szerver;
  • bool feltüntetett - Ez visszaad egy értéket, amely azt jelzi, hogy az elem látható;
  • bool Enabled - Ez visszaad egy értéket, amely azt jelzi, hogy az aktív elem;
  • System.Drawing.Point Hely - visszaadja a koordinátáit az elem;
  • bool Válogatott - Ez visszaad egy értéket, hogy az aktív elem (jelölőnégyzetek, rádió gombok) kiválasztott;
  • húr tagName - nevét adja vissza a címke
  • húr szöveg - visszatér innerText elem (hézagok nélkül);
  • System.Drawing.Size Méret - Visszaadja a elem méretét;
  • érvényteleníti törlése () - takarítás a szöveg tartalmát elem.

Legördülő listák. Elemei több választás. A WebDriver egy különleges besorolású SelectElement.
amelynek célja, hogy egyszerűsítse dolgozik HTML kijelölt elemek. mert
Annak érdekében, hogy kihasználják az összes kényelmi ennek az osztálynak van szükség
csatlakoztassa a tér OpenQA.Selenium.Support.UI neveket. Ez az osztály sozherzhit az alábbi módszerekkel:


  • public void DeselectAll () - törli az összes bejegyzést. Csak kiválasztására több elemet (többszörös választás);
  • public void DeselectByIndex (int index) - kikapcsolja a beállítást az index;
  • public void DeselectByText (string text) - kikapcsolja a beállítást az látható szöveg elem;
  • public void DeselectByValue (string érték) - kikapcsolása opciót érdemben elem;
  • public void SelectByIndex (int index) - opció aktiválása, az index;
  • public void SelectByText (string text) - opció aktiválása segítségével a látható szöveg elem;
  • public void SelectByValue (string érték) - aktivált opció érdemben elem;
  • nyilvános System.Collections.Generic.IList AllSelectedOptions - visszaadja az összes választás a jelenlegi elem;
  • nyilvános bool IsMultiple - Ez visszatér értékeket, hogy a többszörös kijelölés elem;
  • nyilvános System.Collections.Generic.IList opciók - visszaadja az opciók listáját a kiválasztott elem;
  • nyilvános OpenQA.Selenium.IWebElement SelectedOption - visszaadja az aktuális elem.

Példaként
többelemes deaktiválni az összes kiválasztott értékeket, majd aktiválja,
különböző parancsokat. Segítségével benyújtja parancsot adatokat küldeni a szerverre.

Példa dolgozni drag and drop. Drag and drop a csapat abban a pillanatban már csak a munka a Windows platformon.

osztály Hozzászólások
predostalvyaet kiegészítő mechanizmusok interakció a böngésző
(Mouseclick, MouseClicksAndHold, ContextClick, DoubleClick,
DragAndDropToOffset és mások).

Egy kicsit a várakozásokat:

WebDriver irányított
elsősorban dolgozni komplex, túlterhelt AJAX kérések
Webes felületek. A fejlesztők ajánlat két készenléti mechanizmus
(Explicit Waits, implicit Waits). Explicit Waits (explicit
elvárás) alkalmazásával WebDriverWait osztály - jelentése
tulajdonképpen ciklikus vár egy esemény.

Implicit Waits (implicit elvárás) - minden elemét keresési parancsok automatikusan várható.

Persze, akkor a módszerek a várakozásokat. Az alábbiakban egy példa a módszer
WaitForTextPresent (). Kerülje a Thread.sleep ().

A szelén WebDriver képes futtatni teszteket egy távoli gépen. Távoli indítás használata szükséges RemoteWebDriver osztályban.

Add, hogy a névtér.

Itt egy egyszerű példa segítségével RemoteWebDriver osztály tesztek futtatásához a távoli gépen:

A Firefox böngésző
feltéve, hogy a munka Profiles böngészőt. Ehhez vegye
osztály FirefoxProfile és FirefoxProfileManager.

A WebDriver lehetséges létrehozni screenshotok:

Példa screenshotok használatával RemoteWebDriver:

Kompatibilitási módban szelén RC WebDriverBackedSelenium írtam ezt a bejegyzést.

Meg kell jegyezni, hogy a lehetőségét, hogy WebDriver realizovanna PageObject és PageFactory sablonokat.
Ezek lényege, hogy a minták legegyszerűbb műveletek
lefoglalni egy külön logikai egységeket, vagyis a absztrahált szintjének
akció egy adott oldalon. Például, van egy oldal Bejelentkezés.
Először létrehozunk egy külön osztályt Bejelentkezés amely tartalmazza az összes
oldalelemek és módszereket a keresést. Továbbá ez az osztály kiosztani
minden neobhodimyme módszerek (az oldalon végrehajtott művelet), az előzőkben
leírt oldalelemek. Ezt követően, a módszereket lehet megvalósítani
használja a magasabb szintű üzleti logikát. ez a megközelítés
Ez jelentősen csökkenti a fejlesztési költségeket és különösen a
támogatási keret teszt. Is, hogy a tesztek rugalmasabb
és reyuzaemymi. Ahhoz, hogy használni minden báját minták fent leírt
végrehajtás WebDriver nem szabad elfelejteni, hogy csatlakoztassa a tér OpenQA.Selenium.Support.PageObjects neveket. A legegyszerűbb példa PageObject sablon:

Bemutatjuk az elemek a bejelentkezés oldalon:

Leírás LoginAsAdministrator módszer:

Néhány példa vették a hivatalos dokumentumok
projektben. Próbáltam vezetni, azt hiszem, az összes alapvető parancsok
A szelén WebDriver. Ezek a példák azt mutatják, csak minimális
lehetőségeit az eszköz, de elegendő egy jó kezdet
őket. Sok szerencsét!

Popravte kérem:
bool feltüntetett - Ez visszaad egy értéket, amely azt jelzi, hogy az elem látható;
bool Enabled - Ez visszaad egy értéket, amely azt jelzi, hogy az adott tétel nem aktív

Kapcsolódó cikkek