Seleniul nu face ușor de înțeles cum este QTP? Este un favorit printre programatori, dar reprezintă o barieră mare pentru începători în testare.
Ce este Seleniul? Ce este Selenium RC? Ce este Webdriver? Care este relația dintre RC și Webdriver? Care este relația dintre Webdriver și limbajele de programare? Poate Selenium să execute scripturi în paralel?
Aici, maestrul insectelor îți spune într-un mod simplu că relația lor complicată este complicată. Clarifică relația dintre ei pentru a o folosi cu adevărat.
Ce este Seleniul?
Selenium este un set de unelte pentru testarea automatizării web care include IDE, Grid, RC (selenium 1.0), WebDriver (selenium 2.0) etc. Selenium IDE este un plugin pentru browserul Firefox. Oferă funcții simple de înregistrare, editare și redare a scenariului. Grila de seleniu este folosită pentru a distribui urmele de test. Acum este integrat în Selenium Server. RC și WebDriver ar trebui privite mai degrabă ca un set de specificații care definesc protocoalele pentru ca pașii clientului să interacționeze cu browserul. și interfața pentru poziționarea și manipularea elementelor.
Ce este WebDriver? Nu este ușor pentru studenții care sunt noi în testarea automată Selenium să înțeleagă ce este API-ul și cum se leagă de limbajele de programare.
http://www.w3.org/TR/2013/WD-webdriver-20130117/
Când am învățat prima dată Selenium (WebDriver), mi-a luat o săptămână să traduc acest document, dar nu înțelegeam ce este. De fapt, este o specificație de bază a protocolului. De exemplu, API-ul Webdriver spune că trebuie să oferim o metodă pentru localizarea ID-urilor elementelor paginii.
Cum organizează și execută Webdriver cazurile de utilizare?
Îmi pare rău, webdriver-ul nu.
Organizarea metodelor (cazurilor de utilizare) pentru manipularea acestor elemente de pagină și introducerea rezultatelor testului se face prin cadrul de testare unitară al limbajului de programare. De exemplu, framework-urile de testare unitară Junit și TestNG din Java, cadrul de testare unitară UnitTest din Python etc.
Care este relația dintre Selenium RC și WebDriver?
RC și WebDriver sunt similare prin faptul că pot fi văzute ca un set de specificații pentru operarea paginilor web. Desigur, funcționează diferit.
selenium RC rulează aplicația Javascrip{filter}t în browser, folosind traducătorul Javascrip{filter}t încorporat al browserului pentru a traduce și executa comenzile selenese (selenese este o colecție de comenzi selenium).
WebDriver controlează direct browserul prin suport nativ pentru browser sau prin extensii de browser. WebDriver este dezvoltat pentru browsere individuale și înlocuiește Javascrip{filtering}t încorporat în aplicația web testată. Integrarea strânsă cu browserele permite crearea unor teste mai avansate, evitând limitările cauzate de modelul de securitate Javascrip{filtering}t. Pe lângă suportul din partea furnizorilor de browsere, WebDriver folosește și apeluri la nivel de sistem de operare pentru a simula inputul utilizatorului.
Se pare că webdriver-ul este puțin mai bun. Pentru a menține compatibilitatea, RC și webdriver coexistă în selenium 2.0, dar selenium 2.0 se referă în general la webdriver.
Diferența dintre paralel și distribuit
Unii studenți sunt curioși cum să execute cazuri de testare în paralel, iar paralelismul necesită ca mai multe cazuri de utilizare să fie executate "simultan", lucru realizat și de tehnologia multi-threading a limbajelor de programare.
Nu este Selenium Grid capabil de execuție distribuită, întrebi? Conceptul de distribuție este de a scrie un caz de utilizare care poate fi executat pe diferite platforme, cum ar fi un caz de test pe calculatorul A, poți apela browserul Firefox al calculatorului B (linux) pentru a rula cazul de testare pe calculatorul A; Poți de asemenea să apelezi browserul Chrome de pe calculatorul C (Windows) pentru a rula cazul de test pe calculatorul A. Acesta este conceptul de distribuție.
|