Articles

Mitä seleeni on? Introduction to Selenium Automation Testing

mitä seleeni on?

Selenium on ilmainen (avoimen lähdekoodin) automatisoitu testauskehys, jota käytetään verkkosovellusten validointiin eri selaimilla ja alustoilla. Voit käyttää useita ohjelmointikieliä, kuten Java, C#, Python jne luoda seleeni testi skriptejä. Seleenitestaustyökalua käyttäen tehtyä testausta kutsutaan yleensä Seleenitestaukseksi.

Selenium-ohjelmisto ei ole vain yksi työkalu, vaan ohjelmistokokonaisuus, jonka jokainen pala palvelee organisaation erilaisia seleenin QA-testaustarpeita. Tässä on luettelo työkaluista

  • Selenium Integrated Development Environment (IDE)
  • Selenium Remote Control (RC)
  • WebDriver
  • Selenium Grid

introduction to selenium
introduction to Selenium

tällä hetkellä selenium RC ja WebDriver yhdistyvät yhdeksi kehykseksi muodostaen selenium 2. Seleeni 1, muuten, viittaa seleeni RC.

Klikkaa tästä, Jos video ei näy

tässä opetusohjelmassa opit:

  • mikä on seleeni?
  • kenelle kehittyi seleeni?
  • sama Alkuperäpoliittinen kysymys
  • Selenium Remote Controlin (Selenium RC) synty
  • Seleeniruudun synty
  • Seleeniruudun synty
  • Webdriverin synty
  • seleenin synty 2
  • niin, miksi nimi Selenium?
  • Lyhyt johdanto Selenium IDE
  • Lyhyt johdanto Selenium Remote Control (Selenium RC)
  • Lyhyt johdanto Selenium Remote Control(Selenium RC)
  • lyhyt esittely WebDriver
  • Selenium Grid
  • Huomautus selain-ja ympäristötuesta
  • Miten valita oikea Seleenityökalu tarpeeseesi
  • seleenin ja QTP: n (nyt UFT) Vertailu
  • QTP: n edut seleeniin verrattuna

kuka kehitti seleeniä?

koska seleeni on kokoelma erilaisia työkaluja, sillä oli myös eri kehittäjät. Alla seleeniprojektiin merkittävällä tavalla osallistuneet avainhenkilöt

Johdatus seleeniin

pääasiassa seleenin loi Jason Huggins vuonna 2004. Insinööri ThoughtWorks, hän työskenteli web-sovellus, joka vaati usein testaus. Tajuttuaan, että sovelluksen toistuva manuaalinen testaus oli yhä tehottomampaa, hän loi JavaScript-ohjelman, joka automaattisesti ohjaisi selaimen toimintaa. Hän nimesi ohjelman ”Javascripttestrunneriksi”.”

nähdessään tämän idean potentiaalin auttaa automatisoimaan muita verkkosovelluksia hän teki Javascriptrunnerista avoimen lähdekoodin, joka myöhemmin nimettiin uudelleen Selenium-ytimeksi.

sama Alkuperäkäytäntö

sama Alkuperäkäytäntö kieltää JavaScript-koodin pääsyn eri verkkotunnuksen elementteihin kuin missä se on käynnistetty. Esimerkki, HTML-koodi www.google.com käyttää JavaScript-ohjelmaa ” randomScript.js”. Sama origin-käytäntö sallii vain randomscriptin.js käyttää sivuja sisällä google.com kuten google.com/mail, google.com/login tai google.com/signup. kuitenkin, se ei voi käyttää sivuja eri sivustoja, kuten yahoo.com/search tai guru99.com koska ne kuuluvat eri verkkotunnuksia.

Johdatus seleeniin

Tämä on syy, miksi ennen Selenium RC: tä testaajien piti asentaa paikalliset kopiot sekä Seleeniytimestä (JavaScript-ohjelma) että web-sovelluksen sisältävästä web-palvelimesta testattavaksi, jotta ne kuuluisivat samaan domainiin

Selenium Remote Controlin (Selenium RC) synty

johdatus seleeniin

valitettavasti; Selenium-ydintä käyttävät testaajat joutuivat asentamaan koko testattavan sovelluksen ja WWW-palvelimen omiin paikallisiin tietokoneisiinsa saman alkuperäkäytännön asettamien rajoitusten vuoksi. Joten toinen Thoughtworkin insinööri, Paul Hammant, päätti luoda palvelimen, joka toimii HTTP-välityspalvelimena ”huijatakseen” selaimen uskomaan, että Seleeniydin ja testattava verkkosovellus tulevat samasta verkkotunnuksesta. Tämä järjestelmä tuli tunnetuksi Selenium Remote Control tai Selenium 1.

Seleeniruudukon synty

Johdatus seleeniin

Seleeniruudukon kehitti Patrick Lightbody vastaamaan tarpeeseen minimoida testin suoritusajat mahdollisimman paljon. Aluksi hän kutsui järjestelmää ” isännöi QA.”Se kykeni kaappaamaan selaimen kuvakaappauksia merkittävissä vaiheissa ja myös lähettämään Seleenikomentoja eri koneille samanaikaisesti.

Selenium IDE: n synty

Johdatus seleeniin

Japanilainen Shinya Kasatani loi Selenium IDE: n, Firefoxin laajennuksen, joka voi automatisoida selaimen tallennus-ja toistotoiminnon avulla. Hän keksi, että testitapausten tekemisen vauhti kiihtyisi entisestään. Hän lahjoitti Selenium IDE: n Selenium-projektille vuonna 2006.

Webdriverin synty

Johdatus seleeniin Simon Stewart loi Webdriverin noin vuonna 2006, kun selaimet ja verkkosovellukset muuttuivat tehokkaammiksi ja rajoittavammiksi JavaScript-ohjelmien kuten Seleeniytimen avulla. Se oli ensimmäinen cross-platform testauskehys, joka pystyi ohjaamaan selainta KÄYTTÖJÄRJESTELMÄTASOLTA.

Selenium 2: n synty

vuonna 2008 koko Seleenitiimi päätti yhdistää Webdriverin ja Selenium RC: n tehokkaammaksi työkaluksi nimeltä Selenium 2, jonka ytimenä oli WebDriver. Tällä hetkellä seleeni RC: tä kehitetään edelleen, mutta vain huoltotilassa. Suurin osa Selenium-projektin ponnisteluista keskittyy nyt Selenium 2: een.

niin, miksi nimi Selenium?

nimi Selenium tuli vitsistä, jonka Jason murjaisi kerran joukkueelleen. Seleenin kehityksen aikana toinen automatisoitu testauskehys oli suosittu Mercury Interactive-nimisen yrityksen tekemä (Kyllä, yritys, joka alun perin valmisti QTP: tä ennen kuin HP osti sen). Koska seleeni on tunnettu vastalääke elohopeamyrkytykseen, Jason ehdotti nimeä ja hänen joukkuetoverinsa ottivat sen. Näin meidän on siis kutsuttava tätä kehystä tähän päivään asti.

Selenium framework-nimen alkuperä

Lyhyt johdanto Selenium IDE

Selenium Integrated Development Environment (IDE) on seleenisarjan yksinkertaisin kehys ja helpoin oppia. Se on Firefox plugin, että voit asentaa niin helposti kuin voit muiden plugins. Yksinkertaisuuden vuoksi seleeni-IDE: tä tulisi kuitenkin käyttää vain prototyyppityökaluna. Jos haluat luoda kehittyneempiä testitapauksia, sinun on käytettävä joko Selenium RC: tä tai Webdriveriä.

Selenium IDE: n hyvät ja huonot puolet

lyhyt esittely Selenium Remote Control (Selenium RC)

Selenium RC oli pitkään koko Selenium-projektin lippulaivakoe. Tämä on ensimmäinen automatisoitu verkkotestaustyökalu, jonka avulla käyttäjät voivat käyttää haluamaansa ohjelmointikieltä. Versiosta 2.25.0 lähtien RC voi tukea seuraavia ohjelmointikieliä:

  • Java
  • PHP

  • Python
  • Perl
  • Ruby

Seleenirc: n hyvät ja huonot puolet

lyhyt esittely WebDriver

WebDriver osoittautuu monilta osin sekä seleeni IDE: tä että seleeni RC: tä paremmaksi. Se toteuttaa nykyaikaisempaa ja vakaampaa lähestymistapaa selaimen toimintojen automatisoinnissa. WebDriver, toisin kuin Selenium RC, ei luota Javascriptiin Seleniumautomaation testauksessa. Se ohjaa selainta suoraan kommunikoimalla sen kanssa.

tuetut kielet ovat samat kuin Selenium RC: ssä.

  • Java
  • PHP

  • Python
  • Perl
  • Ruby

Seleeniverkkojen hyvät ja huonot puolet

Seleeniverkko

selenium Grid on työkalu, jota käytetään yhdessä selenium RC: n kanssa rinnakkaistestien suorittamiseen eri koneilla ja eri selaimilla samanaikaisesti. Rinnakkaistoteutus tarkoittaa useiden testien suorittamista kerralla.

ominaisuudet:

  • mahdollistaa testien samanaikaisen suorittamisen useissa selaimissa ja ympäristöissä.
  • säästää aikaa valtavasti.
  • hyödyntää hub-and-nodes-konseptia. Napa toimii seleenikäskyjen keskeisenä lähteenä jokaiselle siihen liitetylle solmulle.

Huomautus selain-ja ympäristötuesta

arkkitehtuuristen erojensa vuoksi Selenium IDE, Selenium RC ja WebDriver tukevat eri selainjoukkoja ja toimintaympäristöjä.

Selenium IDE WebDriver
Browser Support Mozilla Firefox Internet Explorer versions 6 to 11, both 32 and 64-bit
Microsoft Edge version 12.10240 & above ( partial support some functionalities under development)
Firefox 3.0 and above
Google Chrome 12.0. and above
Opera 11.5 and above
Android – 2.3 ja yli puhelimille ja tableteille
(devices & emulaattorit)
iOS 3+ puhelimille (devices & emulaattorit) ja 3.2+ tableteille (devices & emulaattorit)
HtmlUnit 2.9 ja yli

käyttöjärjestelmä Windows, Mac OS X, Linux kaikki käyttöjärjestelmät, joissa yllä olevat selaimet voivat ajaa.

Huom.: Selenium Webdriverin seuraajaksi kutsutaan selenium RC: tä, joka on vanhentunut & SeleniumHQ: n virallisesti ilmoittama.

kuinka valita tarpeeseesi sopiva Seleenityökalu

Tool
miksi valita?

Selenium IDE

  • To learn about concepts on automated testing and Selenium, including:
  • Selenese commands such as type, open, clickAndWait, assert, verify, etc.
  • Locators such as id, name, xpath, css selector, etc.
  • Executing customized JavaScript code using runScript
  • Exporting test cases in various formats.
  • luoda testejä, joilla on vain vähän tai ei lainkaan aikaisempaa tietoa ohjelmoinnista.
  • luoda yksinkertaisia testikoteloita ja testisarjoja, jotka voi viedä myöhemmin RC: lle tai Webdriverille.
  • testaamaan verkkosovellusta vain Firefoxia ja Chromea vastaan.

Seleenirc

  • suunnitella testi seleneseä ilmaisevammalla kielellä
  • suorittaa testi eri selaimilla (paitsi Htmlunitilla) eri käyttöjärjestelmillä.
  • voit ottaa testisi käyttöön useissa ympäristöissä Selenium-ruudukon avulla.
  • testaa sovellustasi uutta JavaScriptiä tukevaa selainta vastaan.
  • testaamaan verkkosovelluksia monimutkaisilla AJAX-pohjaisilla skenaarioilla.

WebDriver

  • käyttää tiettyä ohjelmointikieltä testitapauksen suunnittelussa.
  • testaamaan sovelluksia, joissa on runsaasti AJAX-pohjaisia toiminnallisuuksia.
  • suorittaa testejä HtmlUnit-selaimella.
  • luoda räätälöityjä testituloksia.

Selenium Grid

  • suorittaa selenium RC-skriptejä samanaikaisesti useissa selaimissa ja käyttöjärjestelmissä.
  • ajaakseen valtavan testisarjan, joka pitää saada valmiiksi mahdollisimman pian.

seleenin ja QTP: n(nyt UFT) Vertailu

Quick Test Professional(QTP) on oma automatisoitu Testausväline, jonka omisti aiemmin Mercury Interactive-yhtiö ennen kuin Hewlett-Packard osti sen 2006. Seleenityökalun sarjalla on monia etuja QTP: hen nähden, kuten alla on esitetty –

seleenin edut ja edut QTP: hen nähden

QTP
mobiililaitteet

selenium
avoin lähdekoodi, vapaasti käytettävä ja maksuton. Kaupallinen.
erittäin laajennettavissa rajoitetut lisäosat
voi suorittaa testejä eri selaimilla voi suorittaa testejä vain Firefoxissa, Internet Explorerissa ja Chromessa
tukee eri käyttöjärjestelmiä voidaan käyttää vain Windowsissa
QTP tukee mobiilisovellusten Testiautomaatiota (iOS &Android) käyttäen HP-ratkaisua nimeltä – HP Mobile Center
voivat suorittaa testejä selaimen ollessa minimoitu tarvitsee sovelluksen alle testi, joka näkyy työpöydällä
, voi suorittaa testejä rinnakkain. voi suorittaa vain rinnakkain, mutta käyttäen Laatukeskusta, joka on jälleen maksullinen tuote.

Advantages of QTP over Selenium

ei ole natiivia kykyä viedä runtime-dataa ulkoisiin formaatteihin

Advantages of QTP over Selenium
QTP
Selenium
Can test both web and desktop applications Can only test web applications
Comes with a built-in object repository Has no built-in object repository
automatisoituu nopeammin kuin seleeni, koska se on täysin varusteltu IDE. automatisoituu hitaammin, koska siinä ei ole omaa IDE: tä ja vain kolmannen osapuolen IDE: tä voidaan käyttää kehittämiseen
Datalähtöinen testaus on helpompi suorittaa, koska siinä on sisäänrakennetut globaalit ja paikalliset datataulukot. Datalähtöinen testaus on hankalampaa, koska sinun täytyy luottaa ohjelmointikielen kykyihin asettaa arvot testitietoillesi
voi käyttää selaimen sisäisiä ohjaimia(kuten Suosikkipalkkia, osoitepalkkia, etu-ja Etupainikkeita jne.) ei voi käyttää testattavan verkkosovelluksen ulkopuolisia elementtejä
tarjoaa ammattimaista asiakastukea virallista käyttäjätukea ei ole tarjolla.
: llä on natiivi kyky viedä testitietoja ulkoisiin formaatteihin
parametrisoinnin tuki on rakennettu Parametrisointi voidaan tehdä ohjelmoinnin kautta, mutta sitä on vaikea toteuttaa.
testiraportit luodaan automaattisesti ei natiivia tukea testi / vikaraporttien luomiseen.

vaikka selvästi QTP: llä on kehittyneempiä ominaisuuksia, seleeni on QTP: tä suurempi kolmella pääalueella:

  • kustannus(koska seleeni on täysin ilmainen)
  • joustavuus(useiden ohjelmointikielien, selainten ja alustojen vuoksi, joita se voi tukea)
  • Rinnakkaistestaus(johon QTP pystyy, mutta vain laatua käyttämällä center)

summary

  • koko selenium-ohjelmistojen testauskokonaisuus koostuu neljästä osasta:
  • Selenium IDE, Firefox-lisäosa, jota voi käyttää vain suhteellisen yksinkertaisten testitapausten ja testisarjojen luomiseen.
  • Selenium Remote Control, joka tunnetaan myös nimellä Selenium 1, joka on ensimmäinen Seleenityökalu, jonka avulla käyttäjät pystyivät käyttämään ohjelmointikieliä monimutkaisten testien luomisessa.
  • WebDriver, uudempi läpimurto, jonka avulla testikommentit voivat kommunikoida suoraan selaimeen ja siten hallita sitä KÄYTTÖJÄRJESTELMÄTASOLTA.
  • Selenium Grid on myös työkalu, jota käytetään Selenium RC: n kanssa rinnakkaistestien suorittamiseen eri selaimissa ja käyttöjärjestelmissä.
  • Selenium RC ja WebDriver yhdistettiin Selenium 2: ksi.
  • seleeni on kustannuksiltaan ja joustavuudeltaan QTP: tä edullisempi. Se mahdollistaa myös testien suorittamisen rinnakkain, toisin kuin QTP: ssä, jossa testejä saa suorittaa vain peräkkäin.