Mikä on Selenium? Esittely Selenium Automaatiotestaus
Mikä on Selenium?
Selenium on ilmainen (avoimen lähdekoodin) automaattinen testauskehys, jota käytetään verkkosovellusten validointiin eri selaimilla ja alustoilla. Voit käyttää useita ohjelmointikieliä, kuten Java, C#, Pythontms Selenium Testaa komentosarjoja. Testaus tehty käyttämällä Selenium testaustyökalua kutsutaan yleensä nimellä Selenium Testaus.
Selenium Tool Suite
Selenium Ohjelmisto ei ole vain yksi työkalu, vaan ohjelmistosarja, jonka jokainen osa palvelee erilaisia Selenium Organisaation QA-testauksen tarpeet. Tässä on luettelo työkaluista
- Selenium Integroitu kehitysympäristö (IDE)
- Selenium Kaukosäädin (RC)
- web-ajuri
- Selenium ruudukko
Tällä hetkellä, Selenium RC ja WebDriver yhdistetään yhdeksi kehykseksi Selenium 2. Selenium 1 muuten viittaa Selenium RC.
Opetusohjelmavideot Selenium
Napauta tätä jos video ei ole saatavilla
Kuka kehitti Selenium?
Koska Selenium on kokoelma erilaisia työkaluja, ja sillä oli myös erilaisia kehittäjiä. Alla on avainhenkilöt, jotka ovat antaneet merkittävän panoksen Selenium projekti
Ensisijaisesti Selenium oli loi Jason Huggins vuonna 2004. ThoughtWorksin insinöörinä hän työskenteli verkkosovelluksen parissa, joka vaati usein testausta. Tajusiaan, että heidän sovelluksensa toistuvasta manuaalisesta testauksesta oli tulossa yhä tehottomaksi, hän loi a JavaKäsikirjoitus ohjelma, joka ohjaa automaattisesti selaimen toimintoja. Hän nimesi tämän ohjelman "JavaScriptTestRunner"
Hän näki tämän idean potentiaalin automatisoida muita verkkosovelluksia JavaScriptRunner avoimen lähdekoodin, joka myöhemmin nimettiin uudelleen Selenium Ydin. Jos olet kiinnostunut tutkimaan muita verkkosovellusten testausvaihtoehtoja, katso nämä Selenium vaihtoehdot.
Sama alkuperäpolitiikka
Sama alkuperäpolitiikka kieltää JavaKomentosarjakoodi, joka ei pääse käyttämään elementtejä verkkotunnuksesta, joka poikkeaa siitä, missä se käynnistettiin. Esimerkki: www.google.comin HTML-koodi käyttää a JavaKomentosarjaohjelma "randomScript.js". Sama alkuperäkäytäntö sallii vain randomScript.js:n pääsyn google.comin sivuille, kuten google.com/mail, google.com/login tai google.com/signup. Se ei kuitenkaan voi käyttää sivuja eri sivustoilta, kuten yahoo.com/search tai guru99.com, koska ne kuuluvat eri verkkotunnuksiin.
Tästä syystä ennen Selenium RC, testaajia tarvitaan asentamaan paikalliset kopiot molemmista Selenium Ydin (a JavaScript-ohjelma) ja testattavan verkkosovelluksen sisältävä verkkopalvelin, jotta ne kuuluisivat samaan toimialueeseen
Syntymä Selenium Kaukosäädin (Selenium RC)
Valitettavasti; testaajat käyttävät Selenium Coren täytyi asentaa koko testattava sovellus ja web-palvelin omille paikallisille tietokoneilleen ohjelman asettamien rajoitusten vuoksi. samaa alkuperäpolitiikkaa. Joten toinen ThoughtWorkin insinööri, Paul Hammant, päätti luoda palvelimen, joka toimii HTTP-välityspalvelimena "huijatakseen" selaimen uskomaan niin Selenium Core ja testattava verkkosovellus tulevat samasta toimialueesta. Tämä järjestelmä tuli tunnetuksi nimellä Selenium Kaukosäädin or Selenium 1.
Syntymä Selenium ruudukko
Selenium Gridin on kehittänyt Patrick Lightbody vastata tarpeeseen minimoida testin suoritusajat mahdollisimman paljon. Hän kutsui järjestelmää aluksi "Isännöi QA.” Se pystyi kaappaamaan selaimen kuvakaappauksia merkittävissä vaiheissa ja myös lähettää Selenium komentoja eri koneille samanaikaisesti.
Syntymä Selenium IDE
Shinya Kasatani Japanin luotu Selenium IDE, The Firefox ja Chrome-laajennus, joka voi automatisoida selaimen tallennus- ja toistoominaisuuden avulla. Hän keksi tämän idean nopeuttaakseen edelleen testitapausten luomista. Hän lahjoitti Selenium IDE Selenium Projekti sisään 2006.
WebDriverin syntymä
Simon Stewart luotu WebDriver noin 2006 kun selaimet ja verkkosovellukset olivat tulossa tehokkaammiksi ja rajoittavammiksi JavaKäsikirjoitusohjelmat, kuten Selenium Ydin. Se oli ensimmäinen alustojen välinen testauskehys, joka pystyi ohjaamaan selainta käyttöjärjestelmätasolta.
Syntymä Selenium 2
In 2008, Koko Selenium Tiimi päätti yhdistää WebDriverin ja Selenium RC muodostaa tehokkaamman työkalun nimeltä Selenium 2, kanssa WebDriver on ydin. Tällä hetkellä, Selenium RC:tä kehitetään edelleen, mutta vain huoltotilassa. Suurin osa Selenium Hankkeen ponnistelut ovat nyt keskittyneet Selenium 2.
Joten, miksi nimi Selenium?
Nimi Selenium tuli vitsistä, jonka Jason iski kerran tiimilleen. Aikana Seleniumn kehitystä, toinen automatisoitu testaus kehys oli suosittu, jonka teki yritys nimeltä Mercury Interaktiivinen (kyllä, yritys, joka alun perin teki QTP:n ennen kuin HP osti sen). Siitä asti kun Selenium on tunnettu vastalääke Mercury myrkytys, Jason ehdotti tätä nimeä ja hänen joukkuetoverinsa ottivat sen. Joten näin meidän on kutsuttava tätä kehystä nykypäivään asti.
Mikä on Selenium IDE?
Selenium Integrated Development Environment (IDE) on yksinkertaisin kehys vuonna Selenium sviitti ja on helpoin oppia. Se on a Chrome ja Firefox kytkeä jonka voit asentaa yhtä helposti kuin muiden lisäosien kanssa. Kuitenkin sen yksinkertaisuuden vuoksi Selenium IDE:tä tulee käyttää vain a prototyyppityökalu. Jos haluat luoda kehittyneempiä testitapauksia, sinun on käytettävä jompaakumpaa Selenium RC tai WebDriver.
Mikä on Selenium Kaukosäädin (Selenium RC)?
Selenium RC oli lippulaivatestauskehys kokonaisuudesta Selenium projektia pitkäksi aikaa. Tämä on ensimmäinen automatisoitu verkkotestaus työkalu avulla käyttäjät voivat käyttää haluamaansa ohjelmointikieltä. Versiosta 2.25.0 alkaen RC voi tukea seuraavia ohjelmointikieliä:
Mikä on WebDriver?
WebDriver osoittautuu paremmaksi kuin Selenium IDE ja Selenium RC monessa suhteessa. Se toteuttaa nykyaikaisemman ja vakaamman lähestymistavan selaimen toimintojen automatisoinnissa. WebDriver, toisin kuin Selenium RC, ei luota JavaKäsikirjoitus Selenium Automaatiotestaus. Se ohjaa selainta kommunikoimalla suoraan sen kanssa.
Tuetut kielet ovat samat kuin kielet Selenium RC.
- Java
- C#
- PHP
- Python
- Perl
- Rubiini
Mikä on Selenium Verkko?
Selenium Grid on työkalu käytetään yhdessä Selenium RC juoksemaan rinnakkaiset testit eri koneilla ja eri selaimilla samanaikaisesti. Rinnakkaissuoritus tarkoittaa useiden testien suorittamista kerralla.
Ominaisuudet:
- mahdollistaa testien samanaikainen suorittaminen in useita selaimia ja ympäristöjä.
- Säästää aikaa valtavasti.
- Hyödyntää keskitin ja solmut konsepti. Keskitin toimii keskeisenä lähteenä Selenium komennot jokaiselle siihen yhdistetylle solmulle.
Selenium Selain- ja ympäristötuki
Niiden arkkitehtonisten erojen vuoksi Selenium SDI, Selenium RC ja WebDriver tukevat erilaisia selaimia ja käyttöympäristöjä.
Selenium IDE | web-ajuri | |
---|---|---|
Selaintuki | mozilla Firefox ja Chrome |
Google Chrome 12+ Firefox Internet Explorer 7+ ja Edge Safari, HtmlUnit ja PhantomUnit |
Operating System | Windows, Mac OS X, Linux | Kaikki käyttöjärjestelmät, joissa yllä olevat selaimet voivat toimia. |
Huomautus: Opera Kuljettaja ei enää toimi
Kuinka valita oikea Selenium Työkalu tarpeisiisi
Työkalu | Miksi valita? |
---|---|
Selenium IDE |
|
Selenium RC |
|
web-ajuri |
|
Selenium ruudukko |
|
Vertailu välillä Selenium ja QTP (nyt UFT)
Quick Test Professional (QTP) on yrityksen aiemmin omistama automaattinen testaustyökalu Mercury Interaktiivinen ennen kuin Hewlett-Packard osti sen vuonna 2006. Sen myöhempi omistaja on MicroFocus ja työkalu nimettiin uudelleen UFT one. The Selenium Tool Suitella on monia etuja verrattuna QTP kuten alla on kuvattu -
Edut ja edut Selenium QTP:n yli
Selenium | QTP |
---|---|
Avoin lähdekoodi, vapaasti käytettäväja ilmainen. | Kaupallinen. |
Erittäin laajennettavissa | Rajoitettu lisäosia |
Voi suorittaa testejä poikki eri selaimet | Voidaan suorittaa vain testejä Firefox, Internet Explorer ja kromi |
Tukee erilaisia käyttöjärjestelmiä | Voidaan käyttää vain Windows |
Tukee mobiililaitteet | QTP tukee mobiilisovellusten testausautomaatiota (iOS ja Android) käyttämällä HP:n ratkaisua nimeltä – HP Mobile Center |
Osaa suorittaa testejä vaikka Ishayoiden opettaman selain on minimoitu | Sovelluksen on oltava testattavana, jotta se näkyy työpöydällä |
Osaa suorittaa testejä rinnakkain. | Voi suorittaa vain rinnakkain, mutta käyttämällä Quality Centeriä, joka on jälleen maksullinen tuote. |
QTP:n edut verrattuna Selenium
QTP | Selenium |
---|---|
Saa testata sekä web- että työpöytäsovelluksia | Voi vain testata verkkosovelluksia |
Mukana a sisäänrakennettu objektivarasto | Siinä ei ole sisäänrakennettua objektivarastoa |
Automatisoituu nopeammin kuin Selenium koska se on täysin varusteltu IDE. | Automatisoituu hitaammin, koska sillä ei ole alkuperäistä 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 tietotaulukot. | Tietoihin perustuva testaus on hankalampaa, koska joudut luottamaan ohjelmointikielen kykyihin asettaaksesi arvoja testidatallesi |
Voi käyttää selaimen säätimiä(kuten Suosikit-palkki, osoitepalkki, Takaisin- ja Eteenpäin-painikkeet jne.) | Testattavan verkkosovelluksen ulkopuolisia elementtejä ei voi käyttää |
Tarjoaa ammattimaista asiakastuki | Virallista käyttäjätukea ei tarjota. |
On natiivi kyky viedä testitietoja ulkoisiin muotoihin | Sillä ei ole alkuperäistä kykyä viedä ajonaikaista dataa ulkoisiin muotoihin |
Parametrisointituki on rakennettu | Parametrisointi voidaan tehdä ohjelmoimalla, mutta sitä on vaikea toteuttaa. |
Testiraportit luodaan automaattisesti | Ei natiivitukea testi-/vikaraporttien luomiseen. |
Vaikka selvästikin QTP:llä on kehittyneempiä ominaisuuksia, Selenium ylittää QTP:n kolmella pääalueella:
- Hinta(koska Selenium on täysin ilmainen)
- Joustavuus(johtuen useista ohjelmointikielistä, selaimista ja alustoista, joita se voi tukea)
- Rinnakkainen testaus(jotain, mihin QTP pystyy, mutta vain Quality Centerin avulla)
Yhteenveto
- Koko Selenium Software Testing Suite koostuu neljästä osasta:
- Selenium IDE, a Firefox ja kromi-lisäosa, jota voit käyttää vain suhteellisen yksinkertaisten testitapausten ja testipakettien luomiseen.
- Selenium Kaukosäädin, joka tunnetaan myös nimellä Selenium 1, on ensimmäinen Selenium työkalu, jonka avulla käyttäjät voivat käyttää ohjelmointikieliä monimutkaisten testien luomiseen.
- WebDriver on uudempi läpimurto, jonka avulla testiskriptit voivat kommunikoida suoraan selaimeen ja siten ohjata sitä käyttöjärjestelmätasolta.
- Selenium Grid on myös työkalu, jota käytetään Selenium RC suorittaa rinnakkaisia testejä eri selaimissa ja käyttöjärjestelmissä.
- Selenium RC ja WebDriver yhdistettiin muotoon Selenium 2.
- Selenium on edullisempi kuin Microfocus UFT One kustannusten ja joustavuuden suhteen.