Seleenisydämen laajennukset (User-Extensions.js)

Laajennusten ymmärtämiseksi annetaan ensin ymmärtää seleenin IDE: n kolme pilaria

  1. Toimi: Mitä toimintoa suoritat käyttöliittymän näytöllä

  2. Arvioijat / väite: Mitä varmennuksia teet käyttöliittymästä saamillesi tiedoille

  1. Locator-strategia: Kuinka voimme löytää elementin käyttöliittymästä.

Nyt Selenium IDE: llä on erittäin kypsä kirjasto, jossa on paljon toimintoja, väitteitä / arvioijia ja paikannusstrategioita.

Mutta joskus meidän on lisättävä siihen lisää toimintoja projektivaatimuksiamme varten. Tässä tilanteessa voimme laajentaa kirjastoa lisäämällä mukautetut laajennuksemme. Näitä mukautettuja laajennuksia kutsutaan käyttäjän laajennuksiksi.

Tarvitsemme esimerkiksi toiminnon, joka voi muuntaa tekstin isoksi ennen web-elementin täyttämistä. Tätä toimintoa ei löydy oletusarvoisesta Toimintokirjastosta. Tällöin voit luoda oman 'käyttäjälaajennuksen'. Tässä opetusohjelmassa opitaan, kuinka luodaan käyttäjälaajennus tekstin muuntamiseksi isoksi kirjaimeksi

Vaatimus Selenium-käyttäjälaajennuksen luomiseksi:

Selenium IDE: n käyttäjälaajennuksen luomiseksi meidän on tiedettävä JavaScriptin ja Java Scriptin prototyyppikohde-käsitteen peruskäsite.

Käyttäjälaajennuksen luomiseksi sinun on luotava Java-komentosarjatavat ja lisättävä ne seleeniobjektin prototyyppiin ja PageBot-objektin prototyyppiin.

Kuinka Selenium IDE tunnistaa käyttäjän laajennuksen?

Kun käyttäjälaajennus on lisätty Selenium IDE -ohjelmaan, kun käynnistämme Selenium IDE: n, kaikki nämä javascript-prototyypin laajennukset latautuvat, ja Selenium IDE tunnistaa ne nimellä.

Kuinka luoda käyttäjälaajennus

Vaihe 1) Toiminto - kaikki toiminnot käynnistetään "do" -toiminnolla, ts. Jos toiminto on tarkoitettu isoille kirjaimille, sen nimi on doTextUpperCase. Kun lisätään tämä toimintamenetelmä Selenium IDE -ohjelmaan, Selenium IDE luo itse odotustavan tälle toiminnolle. Joten tässä tapauksessa, kun luomme doTextUpperCase- toiminnon, Selenium IDE luo vastaavan odotustoiminnon nimellä TextUpperCaseAndWait . Se voi hyväksyä kaksi parametria

Esimerkki: isojen kirjainten tekstitoiminto

Selenium.prototype.doTextUpperCase = funktio (paikannin, teksti) {// Täällä findElement pystyy itse käsittelemään kaiken tyyppisiä paikantimia (xpath, css, nimi, id, className), meidän on vain välitettävä paikannustekstivar element = this.sivu (). findElement (paikannin);// Luo kirjoitettava tekstiteksti = teksti.toUpperCase ();// Korvaa elementtiteksti uudella tekstilläthis.page (). aizstaaText (elementti, teksti);};

Vaihe 2) Arvioijat / väite - Kaikki seleeniobjektin prototyyppiin rekisteröidyt arvioijat etuliitetään

"get" tai "on" Ex. getValueFromCompoundTable, isValueFromCompoundTable .Se voi hyväksyä kaksi parametria, yhden kohteelle ja toisen arvokentälle testitapauksessa.

Jokaiselle arvioijalle on olemassa vastaavat tarkastustoiminnot, joiden etuliite on "vahvista", "vakuuttaa" ja odotustoiminnon etuliite "waitFor".

Esimerkki: Isojen kirjainten arvioijille

Selenium.prototype.assertTextUpperCase = funktio (paikannin, teksti) {// "findElement" käsittelee kaikki paikannusstrategiat automaattisestivar element = this.sivu (). findElement (paikannin);// Luo vahvistettava tekstiteksti = teksti.toUpperCase ();// Hae todellinen elementin arvovar actualValue = element.value;// Varmista, että todellinen arvo vastaa odotettuaAssert.matches (odotettavissa oleva arvo, todellinen arvo);};Selenium.prototype.isTextEqual = funktio (paikannin, teksti) {palauta this.getText (paikannin) .arvo === teksti;};Selenium.prototype.getTextValue = funktio (paikannin, teksti) {palauta this.getText (locator) .value;};

Vaihe 3) Paikannusstrategia - Jos haluamme luoda oman toiminnon paikantamaan elementin

meidän on laajennettava PageBot-prototyyppiä toiminnolla, jonka etuliite on "locateElementBy".

Se vie kaksi parametria, ensin on paikanninmerkkijono ja toinen on asiakirja

missä sitä on etsittävä.

Esimerkki: Isojen kirjainten paikannuslaite

// "inDocument" on etsimäsi asiakirja.PageBot.prototype.locateElementByUpperCase = funktio (teksti, inDocument) {// Luo haettava tekstivar odotettavissa oleva arvo = teksti.toUpperCase ();// Selaa kaikkia elementtejä etsimällä niitä, joilla on// arvo === odotettu arvovar allElements = inDocument.getElementsByTagName ("*");// Tämä tähti '*' on eräänlainen säännöllinen lauseke, joka käy läpi kaikki elementit (HTML DOM: ssa jokaisella elementillä on varmasti tagin nimi, kuten , ,

, , ,
jne.). Tässä motiivimme on löytää elementti, joka sopi yhteen ylätasoisen tekstin kanssa, jonka olemme ohittaneet, joten etsimme sitä kaikista elementeistä ja kun saamme vastaavuuden, meillä on oikea verkkoelementti.for (var i = 0; i

Kuinka käyttää uutta luotua ydinlaajennusta?

  1. Siirry Selenium IDE -ohjelmaan

    Napsauta Asetukset -> Asetukset ...

  1. Valitse Yleiset-osiosta uuden luodun Selenium Core Extensionin sijainti

  2. Napsauta OK ja käynnistä Selenium IDE uudelleen

  1. Löydät laajennuksen komentoluettelosta

Tässä on luettelo Selenium IDE: ssä käytetyistä suosituista laajennuksista / laajennuksista

Nimi Tarkoitus
Suosikit Testipaketin merkitseminen suosikiksi ja suorittaminen yhdellä napsautuksella
Joustava ohjaaja X Flex-pohjaiseen automaatioon
FlexMonkium Adobe Flex -perusteiseen tallennukseen ja toistotestaukseen Selenium IDE: ssä
Tiedostojen kirjaaminen Lokien tallentamiseen tiedostoon
Virtauksen hallinta Testin suorittamisen kulun hallitsemiseksi
Korosta elementit Korosta web-hallinta
Epäsuora odota Odottaa elementtiä tietyn aikarajan
Kuvakaappaus epäonnistui Ota kuvakaappaus epäonnistumisesta
Testitulokset Tallenna testitulos testipaketille yhdellä napsautuksella

Voit saada nämä kaikki ja paljon muuta SeleniumHQ: n virallisen sivuston latausosiosta

http://docs.seleniumhq.org/download/

Yhteenveto:

  • Selenium IDE: ssä on kolme osaa, Toiminta, Arvioijat / Väite, Paikannin-strategia.
  • Käyttäjälaajennus luodaan, kun Selenium IDE ei täytä nykyistä vaatimusta.
  • Käyttäjälaajennuksen luominen edellyttää, että selenium-objektin prototyyppiin lisätään javascript.
  • Laajennuksen luomisen jälkeen se on lisättävä Selenium IDE -ohjelmaan ja käynnistettävä IDE uudelleen.

Lataa tässä opetusohjelmassa käytetty Selenium Core Extension

Mielenkiintoisia artikkeleita...