Selenium Põhilaiendid (User-Extensions.js)

Laienduste mõistmiseks mõistke kõigepealt seleeni IDE kolme sammast

  1. Toiming: millist toimingut te kasutajaliidese ekraanil teete

    Selenium Südamiku pikendused

  2. Hindajad/väide: millise kinnituse teete kasutajaliideselt saadud andmetele

Selenium Südamiku pikendused

  1. Lokaatori strateegia: kuidas leiame kasutajaliideses elemendi?

Selenium Südamiku pikendused

Nüüd, Selenium IDE-l on väga küps raamatukogu, kus on palju toiminguid, väiteid/hindajaid ja lokatsioonistrateegiaid.

Kuid mõnikord peame oma projektinõuete jaoks sellele lisama rohkem funktsioone. Sellises olukorras saame seda teeki laiendada, lisades oma kohandatud laiendused. Neid kohandatud laiendusi nimetatakse kasutajalaienditeks.

Näiteks vajame toimingut, mis suudab teksti enne veebielemendi täitmist suurtähtedeks teisendada. Te ei leia seda toimingut vaiketoiminguteegist. Sellisel juhul saate luua oma kasutajalaiendi. Selles õpetuses õpime, kuidas luua kasutajalaiendit teksti suurtähtedeks teisendamiseks

Nõue luua Selenium kasutajalaiend

Kasutajalaiendi loomiseks Selenium IDE, peame teadma selle põhikontseptsiooni JavaScript ja Java Skripti prototüübi objekti kontseptsioon.

Nõue luua Selenium kasutaja laiendus

Kasutajalaiendi loomiseks peate looma Java skriptimeetodid ja lisage need seleeniobjekti prototüübile ja PageBoti objekti prototüübile.

Kuidas Selenium Kas IDE tunneb kasutajalaiendi ära?

Pärast kasutajalaiendi lisamist Selenium IDE, kui alustame Selenium IDE, laaditakse kõik need JavaScripti prototüübi laiendused ja Selenium IDE tunneb nad ära nende nime järgi.

Kuidas luua kasutajalaiendit

Samm 1) Toiming– kõik toimingud algavad sõnaga "do", st kui tegu on suurtähtedega, siis on selle nimi doTextUpperCase. Kui lisame selle toimingumeetodi sisse Selenium SDI, Selenium IDE loob selle toimingu jaoks ise ootemeetodi. Nii et sel juhul, kui me loome doTextUpperCase meetmeid, Selenium IDE loob vastava ootefunktsiooni kujul TekstUpperCaseAndWait. See võib aktsepteerida kahte parameetrit

Näide: tekstitoiming suurtähtedega

Selenium.prototype.doTextUpperCase = function(locator, text) {
     // Here findElement is itself capable to handle all type of locator(xpath,css,name,id,className), We just need to pass the locator text
     var element = this.page().findElement(locator);
      
     // Create the text to type
     text = text.toUpperCase();
      
     // Replace the element text with the new text
     this.page().replaceText(element, text);
    };

2. samm) Hindajad/väide- Kõik seleeniobjekti prototüübis registreeritud hindajad märgitakse eesliitega

sõnaga "saada" või "on" Nt. getValueFromCompoundTable , isValueFromCompoundTable . See võib testjuhtumil aktsepteerida kahte parameetrit, üks sihtmärgi ja teine ​​väärtuse välja jaoks.

Loo kasutajalaiend

Iga hindaja jaoks on vastavad kontrollifunktsioonid, mille eesliide on "verify", "assert" ja ootefunktsiooni eesliide on "waitFor".

Näide: teksti suurtähtedega hindajatele

Selenium.prototype.assertTextUpperCase = function(locator, text) {
     // All locator-strategies are automatically handled by "findElement"
     var element = this.page().findElement(locator);
      
     // Create the text to verify
     text = text.toUpperCase();
      
     // Get the actual element value
     var actualValue = element.value;
    
     // Make sure the actual value matches the expected
     Assert.matches(expectedValue, actualValue);
    };
    
    Selenium.prototype.isTextEqual = function(locator, text) {
     return this.getText(locator).value===text;
    };
    
    Selenium.prototype.getTextValue = function(locator, text) {
     return this.getText(locator).value;
    };

Samm 3) Lokaatoristrateegia – Kui soovime elemendi asukoha leidmiseks luua oma funktsiooni, siis

peame laiendama PageBoti prototüüpi funktsiooniga, mille eesliit on "locateElementBy".

See võtab kaks parameetrit, esimene on lokaatori string ja teine ​​​​dokument

kust seda tuleb otsida.

Näide: suurtähtedega tekstiotsija jaoks

// The "inDocument" is a document you are searching.
    PageBot.prototype.locateElementByUpperCase = function(text, inDocument) {
     // Create the text to search for
     var expectedValue = text.toUpperCase();
      
     // Loop through all elements, looking for ones that have
     // a value === our expected value
     var allElements = inDocument.getElementsByTagName("*");
// This star '*' is a kind of regular expression it will go through every element (in HTML DOM every element surely have a tag name like<body>,<a>,<h1>,<table>,<tr>,<td> etc. ). Here our motive is to find an element which matched with the Upper Case text we have passed so we will search it with all elements and when we get match we will have the correct web element.
     for (var i = 0; i < allElements.length; i++) {
     var testElement = allElements[i];
     if (testElement.innerHTML && testElement.innerHTML === expectedValue) {
     return testElement;
     }
     }
     return null;
    };

Kuidas kasutada äsja loodud põhilaiendit?

  1. Minna Selenium IDE

    Klõpsake valikutel Valikud -> Valikud…

Kasutage äsja loodud põhilaiendit

  1. Jaotises Üldine valige vastloodud asukoht Selenium Põhipikendus

    Kasutage äsja loodud põhilaiendit

  2. Klõpsake nuppu OK ja taaskäivitage Selenium IDE

Kasutage äsja loodud põhilaiendit

  1. Laienduse leiate käsuloendist

Kasutage äsja loodud põhilaiendit

Siin on kasutatud populaarsete laienduste/pistikprogrammide loend Selenium IDE

Eesnimi Eesmärk
Lemmikud Testkomplekti lemmikuks märkimiseks ja nende käivitamiseks ühe klõpsuga
Flex Pilot X Flexipõhise automatiseerimise jaoks
FlexMonkium Adobe Flexi põhise salvestamise ja taasesituse jaoks Testimine in Selenium IDE
Failide logimine Logide faili salvestamiseks
Vookontroll Testi täitmise voo juhtimiseks
Tõstke esile elemendid Veebi juhtelemendi esiletõstmiseks
Kaudne ootamine Elementi ootamine teatud aja jooksul
Ekraanipilt ebaõnnestumise korral Tehke ebaõnnestumise kohta ekraanipilt
Testi tulemused Säästa Testjuhtum testkomplekti tulemus ühe klõpsuga

Neid kõiki ja palju muud saate siit SeleniumHQ ametliku saidi allalaadimise jaotis

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

kokkuvõte

  • Seal on kolm osa Selenium IDE, tegevus, hindajad/väide, asukohastrateegia.
  • Kasutajalaiend luuakse, kui Selenium IDE ei täida praegust nõuet.
  • Kasutajalaienduse loomiseks tuleb seleeni objekti prototüübile lisada javascript.
  • Pärast laienduse loomist tuleb see lisada Selenium IDE ja taaskäivitage IDE.

Lae alla Selenium Selles õpetuses kasutatud põhilaiendus

Võta see postitus kokku järgmiselt: