Išsamus geriausių "Selenium" vadovėlių sąrašas, kad išmoktumėte ir įvaldytumėte "Selenium" nuo nulio:
Po keleto dažnų STH skaitytojų prašymų, šiandien mes pagaliau pradedame NEMOKAMĄ "Selenium" pamokų seriją Šioje "Selenium" mokymų serijoje išsamiai aptarsime visas "Selenium" testavimo koncepcijas ir jo paketus, pateikdami lengvai suprantamų praktinių pavyzdžių.
Šios Selenium pamokos naudingos pradedantiesiems ir pažengusiems Selenium naudotojams. Pradėdami nuo pačių pagrindinių Selenium sąvokų pamokų, palaipsniui pereisime prie pažangių temų, tokių kaip Framework kūrimas, Selenium Grid ir Cucumber BDD.
Išsamus šios serijos "Selenium" vadovėlių sąrašas:
Seleno pagrindai:
- Pamoka Nr. 1 : Selenium testavimo įvadas (Būtina perskaityti)
- Pamoka Nr. 2 : "Selenium IDE" funkcijos, "Selenium" atsisiuntimas ir įdiegimas
- Pamoka Nr. 3 : Mano pirmasis Selenium IDE scenarijus (Būtina perskaityti)
- Pamoka Nr. 4 : Skripto kūrimas naudojant "Firebug" ir jo diegimas
- Pamoka Nr. 5 : Lokatorių tipai: ID, ClassName, Name, Link Text, Xpath
- Pamoka Nr. 6 : Lokatoriaus tipai: CSS selektorius
- Pamoka Nr. 7 : Elementų vietos nustatymas "Google Chrome" ir IE
Selenium WebDriver:
- Pamoka Nr. 8 : Selenium WebDriver įvadas (Būtina perskaityti)
- Pamoka Nr. 9 : "Selenium WebDriver" diegimas naudojant "Eclipse
- Pamoka Nr. 10 : Mano pirmasis "Selenium WebDriver" scenarijus (Būtina perskaityti)
- Pamoka Nr. 11 : Įvadas į JUnit
- Pamoka Nr. 12: Įvadas į TestNG (Būtina perskaityti)
- Pamoka Nr. 13 : Išskleidžiamųjų langelių tvarkymas
- Pamoka Nr. 14 : Ciklo ir sąlyginės komandos
- Mokymo pamoka Nr. 15 : Tiesioginis ir netiesioginis laukimas
- Pamoka Nr. 16 : Įspėjimų ir (arba) iššokančių langų tvarkymas
- Pamoka Nr. 17 : Dažniausiai naudojamos komandos
- Mokymo pamoka #18 : žiniatinklio lentelių, rėmų, dinaminių elementų tvarkymas
- Pamoka Nr. 19 : Išimčių tvarkymas
"Selenium" sistema:
- Pamoka Nr. 20 : Populiariausi testavimo automatizavimo karkasai (Būtina perskaityti)
- Pamoka Nr. 21 : "Selenium" sistemos kūrimas ir prieiga prie testavimo duomenų iš "Excel (Būtina perskaityti)
- Pamoka Nr. 22 : Generikų ir testų rinkinio kūrimas
- Pamoka Nr. 23 : Naudojant "Apache ANT
- Pamoka Nr. 24 : "Selenium Maven" projekto nustatymas
- Pamoka Nr. 25 : Naudojant "Hudson Continuous integration" įrankį
Išplėstinis selenas:
- Pamoka Nr. 26 : registravimas "Selenium
- Pamoka Nr. 27 : "Selenium" scenarijų kūrimo patarimai ir gudrybės
- Pamoka Nr. 28 : Duomenų bazės testavimas naudojant "Selenium WebDriver
- Pamoka Nr. 29 : "Selenium Grid" įvadas (Būtina perskaityti)
- Pamoka Nr. 30 : Automatikos testavimas naudojant Cucumber ir Selenium -1 dalis
- Pamoka Nr. 31 : Selenium WebDriver integracija su Cucumber -2 dalis
- Pamoka Nr. 32: Užtikrinimai "Selenium" naudojant "Junit" ir TestNG sistemas
- Pamoka Nr. 33: "Selenium" teiginių pavyzdžiai - praktiniai taikymai projektuose
- Pamoka Nr. 34: Puslapio objekto modelis "Selenium" nenaudojant puslapio gamyklos
- Pamoka Nr. 35: Puslapio objekto modelis "Selenium" naudojant puslapio gamyklą
- Pamoka Nr. 36: Raktiniais žodžiais pagrįsta sistema "Selenium" su pavyzdžiais
- Pamoka Nr. 37: Kas yra hibridinė "Selenium" sistema?
- Pamoka Nr. 38: Kaip elgtis su "Selenium" iššokančiais langais naudojant "AutoIT
- Pamoka Nr. 39: Derinimo būdai "Selenium" programoje
- Pamoka Nr. 40: IF rėmų tvarkymas naudojant Selenium WebDriver SwitchTo() metodą
- Pamoka Nr. 41: XPath funkcijos, skirtos "Selenium" dinamiškam Xpath
- Pamoka Nr. 42: "Xpath" ašys dinamiškam "Xpath" "Selenium
- Pamoka Nr. 43: "WebDriver" klausytojai "Selenium
- Pamoka Nr. 44: Kaip pasirinkti žymimąjį langelį "Selenium" programoje su pavyzdžiais
- Pamoka Nr. 45: Kaip elgtis su slinkties juosta "Selenium Webdriver" programoje
- Pamoka Nr. 46: Kaip padaryti ekrano nuotrauką "Selenium" programoje
- Pamoka Nr. 47: Kaip pasirinkti radijo mygtukus "Selenium WebDriver" programoje?
- Pamoka Nr. 48: "Selenium" veiksmai: Dvigubo & amp; dešiniuoju pelės mygtuku spustelėkite "Selenium
- Pamoka Nr. 49: Kaip įkelti failą naudojant "Selenium Webdriver" - 3 metodai
"Selenium" patarimai ir pasiruošimas interviu:
- Pamoka Nr. 50 : "Selenium" projekto bandymų pastangų įvertinimas
- Pamoka Nr. 51 : "Selenium" interviu klausimai ir atsakymai
Kaip pradėti mokytis "Selenium"?
Tai geriausias laikas pradėti mokytis Selenium testavimo savarankiškai, naudojantis šia nemokama Selenium mokymų serija. Skaitykite vadovėlius, praktikuokite pavyzdžius namuose ir pateikite savo užklausas atitinkamų vadovėlių komentarų skiltyje. Mes atsakysime į visas šias užklausas.
Mes nuoširdžiai stengiamės padėti jums išmokti ir įvaldyti vieną populiariausių programinės įrangos testavimo įrankių!
Seleno įvadas
Džiaugiamės galėdami pradėti dar vieną programinės įrangos testavimo mokymo vadovėlių seriją. Šių vadovėlių tikslas - padaryti jus vieno iš plačiai naudojamų programinės įrangos testavimo automatizavimo sprendimų - "Selenium" - ekspertais.
Šioje serijoje apžvelgsime įvairius "Selenium" aspektus. "Selenium" yra ne tik įrankis, bet ir nepriklausomų įrankių grupė. Išsamiai apžvelgsime kai kuriuos "Selenium" įrankius ir, jei reikia, pateiksime praktinių pavyzdžių.
Prieš pradėdami skaityti šią įdomią ir naudingą seriją, apžvelkime, kas joje jūsų laukia.
Kodėl selenas?
Dabartinės pramonės tendencijos rodo, kad masiškai pereinama prie automatizuoto testavimo. Taigi dėl pasikartojančių rankinio testavimo scenarijų klasterio atsirado poreikis automatizuoti šiuos rankinio testavimo scenarijus.
Yra keletas automatinio testavimo privalumų; apžvelkime juos:
- Palaiko pakartotinių testavimo atvejų vykdymą
- Padeda testuoti didelę testų matricą
- Įjungiamas lygiagretus vykdymas
- Skatina neprižiūrimą vykdymą
- Didina tikslumą ir taip sumažina žmogaus daromas klaidas.
- Taupo laiką ir pinigus
Dėl visų šių privalumų:
- Didelė investicijų grąža
- Greitesnė "GoTo" rinka
Yra keletas automatinio testavimo privalumų, kurie yra gerai suprantami ir apie kuriuos daug kalbama programinės įrangos testavimo pramonėje.
Vienas iš dažniausiai užduodamų klausimų yra šie.
- Koks įrankis man geriausiai tinka mano testams automatizuoti?
- Ar tai kainuoja?
- Ar lengva prisitaikyti?
Vienas iš geriausių atsakymų į visus pirmiau pateiktus klausimus automatizuojant žiniatinklio programas yra "Selenium". nes:
- Tai atvirojo kodo
- Ji turi didelę naudotojų bazę ir padedančias bendruomenes
- Jis suderinamas su įvairiomis naršyklėmis ir platformomis
- Jame aktyviai plėtojama saugykla
- Jis palaiko kelių kalbų realizacijas
Pirmas žvilgsnis į "Selenium
Selenium yra vienas populiariausių automatinio testavimo rinkinių. Selenium sukurtas taip, kad palaikytų ir skatintų automatizuotą žiniatinklio taikomųjų programų funkcinių aspektų testavimą ir platų naršyklių bei platformų spektrą. Dėl savo egzistavimo atvirojo kodo bendruomenėje jis tapo vienu iš labiausiai pripažintų įrankių tarp testavimo specialistų.
"Selenium" palaiko daugybę naršyklių, technologijų ir platformų.
Seleno komponentai
"Selenium" yra ne tik vienas įrankis ar pagalbinė priemonė, bet veikiau kelių testavimo įrankių paketas, todėl jis vadinamas rinkiniu. Kiekvienas iš šių įrankių sukurtas taip, kad atitiktų skirtingus testavimo ir testavimo aplinkos reikalavimus.
Rinkinį sudaro šie įrankiai:
- "Selenium" integruota kūrimo aplinka (IDE)
- "Selenium" nuotolinio valdymo pultas (RC)
- "Selenium WebDriver
- "Selenium" tinklelis
"Selenium RC" ir "WebDriver" kartu yra žinomi kaip Selenas 2 . Selenas RC taip pat vadinama vien tik Selenas 1 .
Trumpas įvadas į "Selenium" versijas
Seleno branduolys
"Selenium" yra nuolatinių inžinieriaus, vardu Jasonas Hugginsas iš "ThoughtWorks" Būdamas atsakingas už vidinės programos "Laikas ir išlaidos" testavimą, jis suprato, kad reikia automatizuotos testavimo priemonės, kad būtų galima atsikratyti pasikartojančių rankinių užduočių, nepakenkiant kokybei ir tikslumui.
Todėl jis sukūrė "JavaScript" programą, pavadintą " JavaScriptTestRunner ", kuri 2004 m. pradžioje galėjo automatiškai valdyti naršyklės veiksmus, kurie atrodė labai panašūs į naudotojo bendravimą su naršykle.
Nuo tada Jasonas pradėjo demonstruoti įrankį didelei auditorijai. Galiausiai buvo pradėta diskutuoti apie šio įrankio priskyrimą atvirojo kodo kategorijai ir jo, kaip daugkartinio naudojimo testavimo sistemos kitoms žiniatinklio programoms, potencialą.
Vėliau įrankis buvo pavadintas " Seleno branduolys ".
"Selenium IDE" (Selenium Integrated Deve lopment Environment)
"Selenium IDE Studijuodamas "Selenium Core", jis suprato, kad šį JavaScript kodą galima išplėsti ir sukurti integruotą kūrimo aplinką (IDE), kurią galima prijungti prie "Mozilla Firefox". Ši IDE galėjo įrašyti ir atkurti naudotojo veiksmus "Firefox" egzemplioriuje, prie kurio ji buvo prijungta. Vėliau "Selenium IDE" tapo "Selenium" paketo dalimi.2006 m. Vėliau paaiškėjo, kad ši priemonė turi didelę vertę ir potencialą bendruomenei.
Selenium IDE yra paprasčiausias ir lengviausias iš visų Selenium paketo įrankių. Dėl jo įrašymo ir atkūrimo funkcijų jį itin lengva išmokti minimaliai susipažinus su bet kuria programavimo kalba. Su keliais privalumais Selenium IDE lydėjo ir keli trūkumai, todėl jis netinka naudoti sudėtingesniems bandymų scenarijams.
"Selenium IDE" privalumai ir trūkumai:
IDE trūkumai iš tikrųjų nėra "Selenium" trūkumai. Tai greičiau tik IDE galimybių apribojimai. Šiuos apribojimus galima įveikti naudojant Selenium RC arba WebDriver .
"Selenium RC" (Selenium nuotolinio valdymo pultas)
Selenas RC tai Java kalba parašyta priemonė, leidžianti vartotojui bet kuria pasirinkta programavimo kalba kurti žiniatinklio programos testavimo scenarijus. Selenium RC atsirado siekiant įveikti įvairius trūkumus, kuriuos turėjo "Selenium IDE" arba "Core .
Dėl spragų ir apribojimų, kurie buvo nustatyti naudojant "Selenium Core", naudotojui buvo sunku išnaudoti visus įrankio privalumus. Todėl testavimo procesas tapo sudėtinga ir toli siekiančia užduotimi.
Vienas iš esminių apribojimų buvo Ta pati kilmės politika.
Tos pačios kilmės politikos problema:
Tos pačios kilmės politikos problema yra ta, kad ji neleidžia pasiekti dokumento DOM iš kilmės vietos, kuri skiriasi nuo kilmės vietos, iš kurios bandome pasiekti dokumentą.
Kilmė yra nuoseklus URL adreso schemos, prievado ir prievado derinys. Pavyzdžiui, URL adreso //www.seleniumhq.org/projects/ atveju kilmė yra HTTP, seleniumhq.org ir 80 derinys.
Todėl "Selenium Core" (JavaScript programa) negali pasiekti elementų iš kitos kilmės vietos nei ta, iš kurios ji buvo paleista.
Pavyzdžiui, jei paleisčiau "JavaScript" programą iš "//www.seleniumhq.org/", galėčiau pasiekti to paties domeno puslapius, pavyzdžiui, "//www.seleniumhq.org/projects/" arba "//www.seleniumhq.org/download/". Kiti domenai, pavyzdžiui, google.com, yahoo.com, nebebūtų pasiekiami.
Taigi, norint išbandyti bet kokią programą naudojant "Selenium Core", reikia įdiegti visą programą "Selenium Core" ir žiniatinklio serveryje, kad būtų išspręsta tos pačios kilmės politikos problema.
Taigi, kad būtų galima valdyti tos pačios kilmės politiką ir nereikėtų kurti atskiros testuojamos programos kopijos "Selenium Core", "Selenium" nuotolinis valdymas buvo pristatytas. Jasonui Hugginsui demonstruojant "Selenium", kitas "ThoughtWorks" kolega Paulas Hammantas pasiūlė apeiti tos pačios kilmės politiką ir sukurti įrankį, kurį būtų galima sujungti su pasirinkta programavimo kalba. Taip atsirado "Selenium RC".
Skirtingai nei "Selenium IDE", "Selenium RC" palaiko įvairias naršykles ir platformas.
Darbo eigos aprašymas
- Naudotojas sukuria testo scenarijų norima programavimo kalba.
- Kiekvienai programavimo kalbai yra skirta kliento biblioteka.
- Kliento biblioteka perkelia testo komandas į selenium serverį.
- "Selenium" serveris iššifruoja ir konvertuoja testo komandas į "JavaScript" komandas ir siunčia jas į naršyklę.
- Naršyklė vykdo komandas naudodama "Selenium Core" ir siunčia rezultatus į "Selenium" serverį.
- "Selenium" serveris pateikia testavimo rezultatus kliento bibliotekai.
Prieš pradedant kurti "Selenium RC" scenarijus, reikia turėti keletą išankstinių sąlygų:
- Programavimo kalba - Java, C#, Python ir kt.
- Integruota kūrimo aplinka - "Eclipse", "Netbeans" ir kt.
- Testavimo sistema (neprivaloma) - JUnit, TestNG ir kt.
- Ir "Selenium RC" sąranka, žinoma
Seleno RC privalumai ir trūkumai:
Daugiau informacijos apie "Selenium RC" privalumus ir trūkumus rasite toliau pateiktame paveikslėlyje.
"Selenium" tinklelis
Naudojant selenium RC, testuotojo gyvenimas visada buvo teigiamas ir palankus, kol dėl naujų tendencijų atsirado poreikis vykdyti tuos pačius ar skirtingus testų scenarijus keliose platformose ir naršyklėse vienu metu, kad būtų galima pasiekti paskirstytą testų vykdymą, testavimą skirtingose aplinkose ir nepaprastai sutaupyti vykdymo laiko. Taigi, tenkinant šiuos reikalavimus "Selenium" tinklelis buvo įtraukta į šį procesą.
Patas Lightbody pristatė "Selenium Grid", kad būtų galima vienu metu atlikti bandymų rinkinius keliose platformose.
"Selenium WebDriver
"Selenium WebDriver" sukūrė dar vienas "ThoughtWorks" inžinierius Simonas Stewartas 2006 m. "WebDriver" taip pat yra žiniatinklio testavimo įrankis, tačiau jis šiek tiek skiriasi nuo "Selenium RC". Kadangi įrankis buvo sukurtas remiantis fundamentaliu pagrindu, kai kiekvienai naršyklei buvo sukurtas atskiras klientas, nereikėjo "JavaScript Heavy lifting". Dėl to buvo atlikta suderinamumo analizė tarp Selenas RC ir WebDriver Dėl to buvo sukurta galingesnė automatinio testavimo priemonė, vadinama Selenas 2 .
WebDriver yra švari ir grynai į objektus orientuota sistema. Ji naudoja naršyklės gimtąjį suderinamumą automatizavimui nenaudojant jokių periferinių subjektų. Didėjant paklausai, ji įgijo didelį populiarumą ir naudotojų bazę.
"Selenium WebDriver" privalumai ir trūkumai:
Daugiau informacijos apie "WebDriver" privalumus ir trūkumus rasite toliau pateiktame paveikslėlyje.
Selenas 3
Selenas 3 yra patobulinta Selenas 2 . Tai įrankis, skirtas mobiliųjų ir žiniatinklio programų automatizavimui. Teigdami, kad jis palaiko mobiliųjų programų testavimą, norime pasakyti, kad "WebDriver" API buvo išplėsta siekiant patenkinti mobiliųjų programų testavimo poreikius. Tikimasi, kad įrankis netrukus bus pradėtas naudoti rinkoje.
Aplinkos ir technologijų stekas
Atsiradus naujam "Selenium" rinkinio įrankiui ir jį papildžius, aplinkos ir technologijos tampa vis labiau suderinamos. Čia pateikiamas išsamus "Selenium" įrankių palaikomų aplinkų ir technologijų sąrašas.
Palaikomos naršyklės
Palaikomos programavimo kalbos
Palaikomos operacinės sistemos
Palaikomos testavimo sistemos
Išvada
Šioje pamokoje bandėme jus supažindinti su "Selenium" rinkiniu, aprašydami įvairias jo sudedamąsias dalis, naudojimo būdus ir jų pranašumus.
Štai šio straipsnio esmė.
- "Selenium" - tai kelių automatinio testavimo įrankių rinkinys, kurių kiekvienas skirtas skirtingiems testavimo poreikiams tenkinti.
- Visi šie įrankiai priklauso tai pačiai atvirojo kodo kategorijai ir palaiko tik žiniatinklio testavimą.
- "Selenium" rinkinį sudaro 4 pagrindiniai komponentai; "Selenium IDE", "Selenium RC", "WebDriver" ir "Selenium Grid .
- Tikimasi, kad naudotojas išmintingai pasirinks savo poreikiams tinkamą "Selenium" įrankį.
- "Selenium IDE" platinama kaip "Firefox" įskiepis, todėl ją lengviau įdiegti ir naudoti. Naudotojui nereikia turėti išankstinių programavimo žinių. "Selenium IDE" yra ideali priemonė naiviam naudotojui.
- "Selenium RC" yra serveris, leidžiantis vartotojui kurti testavimo scenarijus norima programavimo kalba. Jis taip pat leidžia vykdyti testavimo scenarijus dideliame naršyklių spektre.
- "Selenium Grid" suteikia papildomą "Selenium RC" funkciją, nes testo scenarijus vienu metu paskirstomas skirtingose platformose ir naršyklėse, taip įgyvendinant "master-slave" architektūrą.
- "WebDriver" yra visiškai kitoks įrankis, turintis įvairių pranašumų, palyginti su "Selenium RC". "Selenium RC" ir "WebDriver" sintezė dar vadinama "Selenium 2". "WebDriver" tiesiogiai bendrauja su žiniatinklio naršykle ir automatizavimui naudoja jos vietinį suderinamumą.
- "Selenium 3" yra labiausiai laukiama "Selenium" rinkinio dalis, kuri dar nepateko į rinką. "Selenium 3" labai skatina mobiliųjų įrenginių testavimą.
Kitoje pamokoje aptarsime "Selenium IDE" pagrindus, jos diegimą ir funkcijas. Taip pat apžvelgsime pagrindinius "Selenium IDE" terminus ir nomenklatūrą.
Kitas Selenium Tutorial : Įvadas į Selenium IDE ir jos diegimas su išsamiu visų Selenium IDE funkcijų tyrimu (netrukus)
Pastaba skaitytojams : Kitas "Selenium" mokymų serijos vadovėlis yra apdorojimo režime, o kol kas galite šiek tiek sužinoti apie "Selenium" rinkinį ir jo įrankius apsilankę oficialioje svetainėje.
Apie autorius:
Šruti Šrivastava (pagrindinė šios serijos autorė), Amaresh Dhal ir Pallavi Sharma padeda mums pristatyti šią seriją skaitytojams.
Laikykitės ir dalinkitės savo nuomone, komentarais ir žiniomis. Taip pat praneškite mums, jei manote, kad ką nors praleidome, kad galėtume juos įtraukti į vėlesnius vadovėlius.