Selén neumožňuje ľahko pochopiť, čo to vlastne je ako QTP? Je obľúbená medzi programátormi, ale pre nováčikov je veľkou prekážkou pri testovaní.
Čo je selén? Čo je Selenium RC? Čo je Webdriver? Aký je vzťah medzi RC a Webdriverom? Aký je vzťah medzi Webdriverom a programovacími jazykmi? Môže Selenium vykonávať skripty paralelne?
Tu vám majster hmyzu jednoducho povie, že ich zložitý vzťah je komplikovaný. Ujasniť vzťah medzi nimi, aby ho naozaj využili.
Čo je selén?
Selenium je sada nástrojov na testovanie webovej automatizácie, ktorá zahŕňa IDE, Grid, RC (selenium 1.0), WebDriver (selenium 2.0) a ďalšie. Selenium IDE je plugin pre prehliadač Firefox. Poskytujte jednoduché funkcie nahrávania, úpravy a prehrávania skriptov. Na rozloženie testovacích krokov sa používa selénová mriežka. Teraz je integrovaný do Selenium Server. RC a WebDriver by sa mali vnímať skôr ako súbor špecifikácií, ktoré definujú protokoly pre interakciu krokov klienta s prehliadačom. a rozhranie pre polohovanie a manipuláciu prvkov.
Čo je WebDriver? Pre študentov, ktorí sú v automatizovanom testovaní selenium noví, nie je jednoduché pochopiť, čo je API a ako súvisí s programovacími jazykmi.
http://www.w3.org/TR/2013/WD-webdriver-20130117/
Keď som sa prvýkrát učil Selenium (WebDriver), trvalo mi týždeň preložiť tento dokument, ale nerozumel som, čo to je. V skutočnosti ide o základnú špecifikáciu protokolu. Napríklad Webdriver API hovorí, že potrebujeme poskytnúť metódu na lokalizáciu identifikátorov prvkov stránky.
Ako Webdriver organizuje a vykonáva prípady použitia?
Prepáčte, webdriver nie.
Organizovanie metód (prípadov použitia) na manipuláciu s týmito stránkovými prvkami a zadávanie výsledkov testu vykonáva jednotkový testovací rámec programovacieho jazyka. Napríklad Java Junit a TestNG jednotkové testovacie frameworky, Pythonov UnitTest unit testing framework a podobne.
Aký je vzťah medzi Selenium RC a WebDriverom?
RC a WebDriver sú podobné v tom, že ich možno vnímať ako súbor špecifikácií pre prevádzku webových stránok. Samozrejme, fungujú inak.
Selenium RC spúšťa aplikáciu Javascrip{filter}t v prehliadači, pričom využíva vstavaný prekladač Javascrip{filter}t na preklad a vykonávanie príkazov v jazyku Selenian (Selenium je zbierka príkazov Selenium).
WebDriver riadi prehliadač priamo prostredníctvom natívnej podpory prehliadača alebo rozšírení prehliadača. WebDriver je vyvinutý pre jednotlivé prehliadače a nahrádza Javascrip{filtering}t vložený do webovej aplikácie počas testu. Presná integrácia s prehliadačmi umožňuje vytvárať pokročilejšie testy, čím sa vyhýba obmedzeniam spôsobeným bezpečnostným modelom Javascrip{filtering}t. Okrem podpory od výrobcov prehliadačov WebDriver využíva aj volania na úrovni operačného systému na simuláciu používateľského vstupu.
Vyzerá to, že webdriver je o niečo lepší. Aby sa zachovala kompatibilita, RC a webdriver koexistujú v selenium 2.0, ale selenium 2.0 zvyčajne označuje webdriver.
Rozdiel medzi paralelným a distribuovaným
Niektorí študenti sú zvedaví, ako vykonávať testovacie prípady paralelne, a paralelizmus vyžaduje, aby sa viacero prípadov použitia vykonávalo "naraz", čo je realizované aj viacvláknovou technológiou programovacích jazykov.
Nie je Selenium Grid schopný distribuovaného vykonávania, pýtate sa? Koncept distribúcie spočíva v napísaní prípadu použitia, ktorý je možné vykonať na rôznych platformách, napríklad testovací prípad na počítači A, môžete zavolať prehliadač Firefox na počítači B (linux), aby sa testovací prípad spustil na počítači A; Môžete tiež zavolať prehliadač Chrome na počítači C (Windows), aby ste spustili testovací prípad na počítači A. Toto je koncept distribúcie.
|