Što je selen?
Selenium je besplatni (otvoreni izvor) automatizirani okvir za testiranje koji se koristi za provjeru valjanosti web aplikacija u različitim preglednicima i platformama. Možete koristiti više programskih jezika kao što su Java, C #, Python itd. Za stvaranje skripti za testiranje selena. Ispitivanje provedeno pomoću alata za ispitivanje selena obično se naziva ispitivanje selena.
Softver Selenium nije samo jedan alat, već paket softvera, a svaki komad udovoljava različitim potrebama organizacije za testiranje Selenium QA. Evo popisa alata
- Integrirano razvojno okruženje za selen (IDE)
- Daljinski upravljač selena (RC)
- WebDriver
- Mreža selena
![](https://cdn.css-code.org/1083603/what_is_selenium_introduction_to_selenium_automation_testing.png.webp)
Trenutno su Selenium RC i WebDriver spojeni u jedan okvir da bi se formirao Selenium 2 . Inače, selen 1 odnosi se na selen RC.
Kliknite ovdje ako videozapis nije dostupan
U ovom vodiču naučit ćete:
- Što je selen?
- Tko je razvio selen?
- Pitanje s istim podrijetlom
- Rođenje daljinskog upravljača selena (Selenium RC)
- Rođenje selenske rešetke
- Rođenje selena IDE
- Rođenje WebDrivera
- Rođenje selena 2
- Pa, zašto naziv Selen?
- Kratki uvod Selenium IDE
- Kratki uvod Selen daljinski upravljač (Selenium RC)
- Kratki uvod WebDriver
- Mreža selena
- Napomena o podršci za preglednik i okoliš
- Kako odabrati odgovarajući alat za selen za vaše potrebe
- Usporedba selena i QTP-a (sada UFT)
- Prednosti QTP-a nad selenom
Tko je razvio selen?
Budući da je Selenium zbirka različitih alata, imao je i različite programere. Ispod su ključne osobe koje su dale značajan doprinos projektu Selenium
Selen je prvenstveno stvorio Jason Huggins 2004. godine . Inženjer u tvrtki ThoughtWorks, radio je na web aplikaciji koja je zahtijevala česta testiranja. Shvativši da ponavljano ručno testiranje njihove aplikacije postaje sve neučinkovitije, stvorio je JavaScript program koji će automatski kontrolirati rad preglednika. Ovaj je program imenovao " JavaScriptTestRunner ". Uvidjevši potencijal ove ideje da pomogne automatizirati druge web aplikacije, napravio je JavaScriptRunner otvorenog koda koji je kasnije preimenovan u Selenium Core . |
Pitanje s istim podrijetlom
Pravila Istog podrijetla zabranjuju JavaScript kodu pristup elementima s domene koja se razlikuje od one na kojoj je pokrenut . Primjerice, HTML kôd na www.google.com koristi JavaScript program "randomScript.js". Ista pravila o izvoru omogućit će randomScript.js pristup stranicama unutar google.com, poput google.com/mail, google.com/login ili google.com/signup. Međutim, ne može pristupiti stranicama s različitih web mjesta, poput yahoo.com/search ili guru99.com, jer pripadaju različitim domenama.
To je razlog zašto su prije Selenium RC testeri trebali instalirati lokalne kopije Selenium Core (JavaScript program) i web poslužitelja koji sadrži web aplikaciju koja se testira kako bi pripadali istoj domeni
Rođenje daljinskog upravljača selena (Selenium RC)
Nažalost; testeri koji koriste Selenium Core morali su instalirati cijelu testiranu aplikaciju i web poslužitelj na vlastita lokalna računala zbog ograničenja nametnutih istim pravilima o izvoru. Tako je drugi inženjer ThoughtWork-a, Paul Hammant , odlučio stvoriti poslužitelj koji će djelovati kao HTTP proxy kako bi "prevario" preglednik vjerujući da Selenium Core i web aplikacija koja se testira dolaze s iste domene. Ovaj je sustav postao poznat pod nazivom Selenium Remote Control ili Selenium 1 .
Rođenje selenske rešetke
Selenium Grid razvio je Patrick Lightbody kako bi udovoljio potrebi da se što je više moguće smanji vrijeme izvršavanja testa. Sustav je u početku nazvao " Hosting QA ". Bio je u stanju snimiti snimke zaslona preglednika tijekom značajnih faza, kao i istovremeno slati naredbe Selenium na različite strojeve.
Rođenje selena IDE
Japanski Shinya Kasatani stvorio je Selenium IDE , proširenje za Firefox koje može automatizirati preglednik pomoću značajke snimanja i reprodukcije. Došao je na ovu ideju kako bi dodatno povećao brzinu u stvaranju test slučajeva. Darovao je selenium IDE projektu Selenium 2006. godine .
Rođenje WebDrivera
Simon Stewart stvorio je WebDriver oko 2006. godine kada su preglednici i web aplikacije postajali sve moćniji i restriktivniji s JavaScript programima poput Selenium Core. Bio je to prvi test za više platformi koji je mogao upravljati preglednikom s razine OS-a.
Rođenje selena 2
U 2008. godini , cijela Selen tim odlučili spojiti WebDriver i selena RC da se formira više moćan alat zvan Selen 2 , s WebDriver kao jezgra . Trenutno se Selenium RC još uvijek razvija, ali samo u načinu održavanja. Većina napora Projekta Selenium sada je usmjerena na Selenium 2.
Pa, zašto naziv Selen?
Ime Selenium nastalo je iz šale koju je Jason jednom zalutao svom timu. Tijekom razvoja Selenia, još je jedan automatizirani okvir za testiranje bio popularan od strane tvrtke pod nazivom Mercury Interactive (da, tvrtka koja je izvorno napravila QTP prije nego što ga je HP kupio). Budući da je selen poznati protuotrov za trovanje živom, Jason je predložio da ga preuzmu ime i njegovi suigrači. Tako smo taj okvir morali nazvati do danas.
Kratki uvod Selenium IDE
Integrirano razvojno okruženje selena (IDE) najjednostavniji je okvir u paketu Selenium i najlakši je za naučiti . To je dodatak za Firefox koji možete instalirati najlakše kao što možete i s ostalim dodacima. Međutim, zbog svoje jednostavnosti, Selenium IDE smije se koristiti samo kao alat za izradu prototipova . Ako želite stvoriti naprednije testove, morat ćete upotrijebiti ili Selenium RC ili WebDriver.
Kratki uvod Selen daljinski upravljač (Selenium RC)
Selenium RC dugo je vremena bio vodeći okvir za testiranje cijelog projekta Selenium. Ovo je prvi alat za automatizirano web testiranje koji je korisnicima omogućio upotrebu programskog jezika koji im je draži . Od verzije 2.25.0, RC može podržavati sljedeće programske jezike:
- Java
- C #
- PHP
- Piton
- Perl
- Rubin
Kratki uvod WebDriver
WebDriver se pokazao boljim od Selenium IDE-a i Selenium RC-a u mnogim aspektima. Primjenjuje moderniji i stabilniji pristup u automatizaciji radnji preglednika. WebDriver se, za razliku od Selenium RC, ne oslanja na JavaScript za testiranje automatizacije selena. Upravlja preglednikom izravnom komunikacijom s njim.
Podržani jezici su isti kao oni u Selenium RC.
- Java
- C #
- PHP
- Piton
- Perl
- Rubin
Mreža selena
Selenium Grid alat je koji se koristi zajedno sa Selenium RC za istodobno pokretanje paralelnih testova na različitim strojevima i različitim preglednicima. Paralelno izvršavanje znači pokretanje više testova odjednom.
Značajke:
- Omogućuje istovremeno pokretanje testova u više preglednika i okruženja.
- Iznimno štedi vrijeme .
- Koristi koncept čvorišta i čvorova . Čvorište djeluje kao središnji izvor naredbi Selenium za svaki čvor povezan s njim.
Napomena o podršci za preglednik i okoliš
Zbog svojih arhitektonskih razlika, Selenium IDE, Selenium RC i WebDriver podržavaju različite skupove preglednika i operativnih okruženja.
IDEJ selena | WebDriver | |
---|---|---|
Podrška preglednika | Mozilla Firefox | Internet Explorer verzije 6 do 11, 32-bitna i 64-bitna verzija programa Microsoft Edge 12.10240 i novije (djelomična podrška nekim funkcionalnostima u razvoju) Firefox 3.0 i novije verzije Google Chrome 12.0 i više Opera 11.5 i novije verzije Android - 2.3 i novije verzije za telefone i tablete (uređaji i emulatori) iOS 3+ za telefone (uređaji i emulatori) i 3.2+ za tablete (uređaji i emulatori) HtmlUnit 2.9 i novije verzije |
Operacijski sustav | Windows, Mac OS X, Linux | Svi operativni sustavi u kojima se mogu pokretati gore navedeni preglednici. |
Napomena: Selenium WebDriver naziva se nasljednikom Selenium RC koji je zastario i službeno najavio SeleniumHQ.
Kako odabrati odgovarajući alat za selen za vaše potrebe
Alat | Zašto odabrati? |
---|---|
IDEJ selena |
|
Selen RC |
|
WebDriver |
|
Mreža selena |
|
Usporedba selena i QTP-a (sada UFT)
Quick Test Professional (QTP) vlasnički je automatizirani alat za testiranje koji je prethodno bio u vlasništvu tvrtke Mercury Interactive prije nego što ga je Hewlett-Packard kupio 2006. godine . Suite Selenium Tool ima mnogo prednosti u odnosu na QTP kao što je detaljno opisano u nastavku -
Prednosti i prednosti selena nad QTP-om
Selen | QTP |
---|---|
Otvoreni izvor , besplatan za upotrebu i besplatan. | Komercijalni . |
Vrlo rastezljiv | Ograničeni dodaci |
Može pokretati testove u različitim preglednicima | Mogu pokretati testove samo u Firefoxu , Internet Exploreru i Chromeu |
Podržava razne operativne sustave | Može se koristiti samo u sustavu Windows |
Podržava mobilne uređaje | QTP podržava automatizaciju testa za mobilne aplikacije (iOS i Android) pomoću HP-ovog rješenja nazvanog - HP Mobile Center |
Može izvršavati testove dok je preglednik minimiziran | Potrebno je da aplikacija koja se testira bude vidljiva na radnoj površini |
Može paralelno izvršavati testove . | Može se izvršavati samo paralelno, ali koristeći Centar kvalitete koji je opet proizvod koji se plaća. |
Prednosti QTP-a nad selenom
QTP | Selen |
---|---|
Može testirati i web i desktop aplikacije | Može testirati samo web aplikacije |
Dolazi s ugrađenim spremištem objekata | Nema ugrađeno spremište objekata |
Automatizira se brže od selena jer je to potpuno opremljeni IDE. | Automatizira se sporije, jer nema izvorni IDE, a samo se IDE treće strane može koristiti za razvoj |
Testiranje na temelju podataka jednostavnije je izvesti jer ima ugrađene globalne i lokalne tablice podataka . | Testiranje na temelju podataka glomaznije je jer se za postavljanje vrijednosti testnih podataka morate oslanjati na mogućnosti programskog jezika |
Može pristupiti kontrolama unutar preglednika (poput trake favorita, adresne trake, gumba Natrag i Naprijed itd.) | Ne mogu pristupiti elementima izvan web aplikacije koja se testira |
Pruža profesionalnu korisničku podršku | Ne nudi se službena korisnička podrška. |
Ima izvornu sposobnost izvoza testnih podataka u vanjske formate | Nema izvornu mogućnost izvoza runtime podataka u vanjske formate |
Izgrađena je podrška za parametarizaciju | Parametriranje se može izvršiti programiranjem, ali je teško provesti. |
Izvješća o testiranju generiraju se automatski | Nema izvorne podrške za generiranje izvještaja o testiranju / greškama. |
Iako je očito da QTP ima naprednije mogućnosti, Selenium nadmašuje QTP u tri glavna područja:
- Trošak (jer je selen potpuno besplatan)
- Fleksibilnost (zbog brojnih programskih jezika, preglednika i platformi koje može podržati)
- Paralelno testiranje (nešto za što je QTP sposoban, ali samo uz uporabu Centra za kvalitetu)
Sažetak
- Cijeli paket za testiranje softvera Selenium sastoji se od četiri komponente:
- Selenium IDE, dodatak za Firefox koji možete koristiti samo u stvaranju relativno jednostavnih testnih slučajeva i programskih paketa.
- Daljinski upravljač Selenium, poznat i kao Selenium 1, koji je prvi alat Selenium koji je korisnicima omogućio upotrebu programskih jezika u stvaranju složenih testova.
- WebDriver, noviji napredak koji omogućuje testnim skriptama da komuniciraju izravno s preglednikom, kontrolirajući ga time s razine OS-a.
- Selenium Grid je također alat koji se koristi sa Selenium RC za izvršavanje paralelnih testova u različitim preglednicima i operativnim sustavima.
- Selenium RC i WebDriver spojeni su u oblik Selenium 2.
- Selen je povoljniji od QTP-a u smislu troškova i fleksibilnosti. Omogućuje vam i paralelno pokretanje testova, za razliku od QTP-a gdje je dopušteno samo sekvencijalno pokretanje testova.