how choose best automation testing tool
V tej vadnici smo za lažje sklicevanje zajeli kriterije za izbiro orodij za avtomatizacijo in kontrolni seznam z matrico primerjalnih orodij za preizkus.
Vodnik od A do Ž o izbiri najboljšega orodja za avtomatizacijo za vaš projekt:
To je 4thvadnico v naši vadnici Test Automation Tutorial. Preverite vse članke, objavljene v tej seriji na tej strani: => Končni vodnik za začetek samodejnega testiranja na vašem projektu
Izbira orodij za avtomatizacijo preskusov je eden najpomembnejših korakov pred začetkom avtomatizacije v kateri koli organizaciji.
Pomembno je, ker bo orodje močno vplivalo na celotna prizadevanja za avtomatizacijo. Če je orodje dobro in vam nudi zahtevane funkcije, postane avtomatizacija enostavnejša in učinkovitejša.
Pri izbiri orodja za avtomatizacijo je treba upoštevati veliko meril. O nekaterih sem razpravljal v enem od svojih prejšnjih člankov. Tu sem naštel najpomembnejše vidike, ki jih je treba upoštevati pri izbiri orodja za avtomatizacijo preskusov.
Kaj se boste naučili:
- Je avtomatizirano testiranje rešitev za vas?
- Kdaj ima smisel avtomatizacija preizkusov?
- Kako izbrati orodje za avtomatizacijo za svoj projekt?
- Merila za ocenjevanje orodij za avtomatizacijo preskusov
- Merila za izbiro orodij za avtomatizacijo in kontrolni seznam
- Vprašanje št. 1: Kolikšen je proračun vaše organizacije za orodje za avtomatizacijo?
- Vprašanje št. 2: Kakšna je dejanska cena orodja?
- Vprašanje št. 3: Ali orodje podpira operacijski sistem / brskalnik ali napravo, v kateri se izvaja vaša aplikacija?
- Vprašanje št. 4: Ali orodje podpira tehnologije in nadzor drugih proizvajalcev, ki se uporabljajo v vaši aplikaciji?
- Vprašanje št. 5: Koliko jezikov orodje podpira? Ali imate kvalificirane vire za te jezike?
- Vprašanje št. 6: Ali orodje podpira povezovanje z različnimi viri podatkov?
- Vprašanje št. 7: Kakšen je mehanizem poročanja orodja za avtomatizacijo?
- Vprašanje št. 8: Ali je orodje mogoče integrirati s testnimi primeri in repozitoriji za upravljanje napak?
- Vprašanje št. 9: Kakšna je uradna tehnična podpora za orodje?
- Vprašanje št. 10: Nekaj tehničnih vidikov, ki jih je treba videti
- Zaključek
- Priporočeno branje
Je avtomatizirano testiranje rešitev za vas?
V svoji karieri sem delal na številnih projektih. Ko delate na istem projektu več kot eno leto, močno začutite potrebo po avtomatizaciji nekaterih nalog. Začnete razmišljati o tem, da bi na projektu uvedli avtomatizirano testiranje, če ga do zdaj vodstvo projekta ni upoštevalo.
Eno leto je dovolj časa, da kdor koli pozna podrobnosti katerega koli projekta. Enkrat podrobno poznate funkcionalnost projekta, lažje se odločite, katere ponavljajoče se naloge je treba avtomatizirati.
Nekateri tudi testerji se dolgočasijo vedno znova opravljajo iste ponavljajoče se naloge in močno začutijo potrebo po avtomatizaciji preskusov.
Ali to pomeni, da bi morali takoj preskočiti avtomatizacijsko testiranje?
Zagotovo ne!
Preden se odločite, ali je avtomatizacija rešitev za vas, je veliko meril, na katerih morate delati .
Kdaj ima smisel avtomatizacija preizkusov?
- Ko je veliko ponavljajočih se testov
- Kadar so pogoste ponovitve regresijskega testiranja
- Ko je treba simulirajo veliko število uporabnikov ki uporabljajo vire aplikacij
- Ko ima AUT razmeroma stabilen uporabniški vmesnik
- Ko imate velik nabor primerov BVT
- Ko se za kritično funkcionalnost ne morete zanašati samo na ročno izvajanje preizkusov
Nadaljnje branje:
- Kdaj naj gre za avtomatizacijo?
- Nasveti, ki jih preberete, pred začetkom samodejnega testiranja
Ko veste, da je pravi čas, da svoj čas in denar vložite v dobro orodje za avtomatizacijo, lahko začnete iskati najboljše orodje za avtomatizacijo, ki ustreza vašim potrebam.
Kako izbrati orodje za avtomatizacijo za svoj projekt?
Uspeh avtomatiziranega testiranja je v veliki meri odvisen od izbire pravih orodij za testiranje. Za oceno ustreznih orodij za avtomatizacijo, ki so na voljo na trgu, traja veliko časa. Toda to je enkratna vaja, ki bo dolgoročno koristila vašemu projektu.
V nekaj primerih sem dobil priložnost pregledati in izbrati orodje za avtomatizacijo svojih projektov. Naloga je bila težka, saj smo morali obvladovati svoje potrebe po testiranju in omejitve stroškov, vendar je bila vredna izkušnja.
Pred izbiro katerega koli orodja za testiranje morate upoštevati naslednja merila:
Merila za ocenjevanje orodij za avtomatizacijo preskusov
1) Ali imate dovolj usposobljenih virov, ki jih lahko dodelite za naloge avtomatizacije?
dva) Kakšen je vaš proračun?
3) Ali orodje zadovoljuje vaše potrebe po testiranju? Ali je primeren za projektno okolje in tehnologijo, ki jo uporabljate? Ali podpira vsa orodja in predmete, ki se uporabljajo v kodi? Včasih se lahko zataknete pri majhnih preizkusih zaradi nezmožnosti orodja za prepoznavanje predmetov, uporabljenih v aplikaciji.
Zgornji trije dejavniki se mi zdijo najpomembnejši za izbiro katerega koli orodja.
4) Ali vam orodje ponuja brezplačno preskusno različico, da ga lahko ocenite, preden se odločite? Ali ima orodje vse funkcije, ki so na voljo v poskusni različici?
5) Ali je trenutna različica orodja stabilna? Ali je podjetje s prodajalci ustanovljeno z dobro podporo strankam ter spletnimi viri za pomoč in uporabniškim priročnikom?
6) Kako je krivulja učenja orodij? Ali je čas učenja sprejemljiv za vaše cilje?
7) Ali želite orodje za avtomatizacijo samo za vaše projektne potrebe ali iščete skupno orodje za vse projekte v vašem podjetju? Dobra izbira bi bila, če izberete orodje, ki podpira večino kodirnih jezikov v vaših projektih.
ime operacijskega sistema v računalniku
8) Katere vrste testiranja podpira? Orodje, ki podpira največje število preskusnih vrst (enota, funkcionalnost, regresija itd.), Je vedno boljša izbira.Opozorilo- Ne uporabljajte orodja samo zato, ker podpira vse vrste testiranja. Pomembno je tudi, da mora biti orodje dovolj zmogljivo za avtomatizacijo vaših kompleksnih zahtev.
9) Ali orodje podpira enostaven vmesnik za ustvarjanje in vzdrževanje testnih skriptov? Orodje za snemanje in predvajanje z možnostjo urejanja posnetih scenarijev je lahko dobra rešitev.
10) Ali ponuja preprost vmesnik, a zmogljive funkcije za izvajanje zapletenih nalog?
enajst) Kako enostavno je zagotoviti vhodne preskusne podatke za kompleksne ali obremenitvene teste? Orodje, ki podpira vnos testnih podatkov iz različnih podatkovnih datotek, kot so Excel, XML, besedilna datoteka itd., Bi bilo v veliko pomoč za avtomatizacijo preizkuševalcev.
12) Ali zagotavlja zmogljivo poročanje z grafičnim vmesnikom? Jasna in jedrnata poročila vam bodo vedno pomagala hitro zaključiti rezultate testa.
13) Ali se dobro integrira z drugimi orodji za testiranje, kot sta načrtovanje projektov in orodja za upravljanje testov ?
Morda boste želeli upoštevati tudi druga merila, kot so:
14) Politika vračila prodajalca orodij
petnajst) Obstoječe ocene strank za orodje
16) Ali prodajalec izvaja začetno usposabljanje?
Nasveti: Zbiranje zahtev je daleč najpomembnejši korak pri izbiri pravega orodja. Ne pozabite kategorizirati svojih zahtev v kategorije, ki jih morate imeti, jih je lepo imeti in ne zahtevajte. To vam bo pomagalo hitro oceniti orodje. Ne pozabite, da na trgu ne boste našli orodja, ki bi podpiralo vse vaše potrebe po avtomatizaciji!
Najboljša orodja za avtomatizacijo :
HP QTP / UFT in selen sta trenutno najbolj priljubljeni možnosti funkcionalnega preizkušanja. QTP / UFT je najboljše orodje za funkcionalno testiranje, podprto v širokem naboru kodirnih jezikov in platform, medtem ko je Selenium najboljše odprtokodno orodje za funkcionalno spletno testiranje.
Preberite ta članek za seznam TOP orodij:
20 najboljših orodij za testiranje avtomatizacije v letu 2020 (izčrpen seznam)
V naslednjem članku bomo razpravljali izzivi pri ročnem testiranju in avtomatizaciji .
Merila za izbiro orodij za avtomatizacijo in kontrolni seznam
10 vprašanj, ki jih morate zastaviti, preden izberete najboljše orodje za testiranje avtomatizacije
Kadar koli ste v situaciji, izberite orodje za avtomatizacijo za svojo organizacijo:
Vprašanje 1: Kolikšen je proračun vaše organizacije za orodje za avtomatizacijo?
To je po mojem mnenju najpomembnejše, kar je treba upoštevati pri izbiri orodja za avtomatizacijo.
Zakaj iskati QTP / UFT in jo raziskujte, kadar licence ne morete kupiti? Orodje QTP stane približno 8000 USD (približno). Če lahko vaša organizacija kupi licenco in ste potrjeni, morate prenesti preskusno različico in na njej izdelati pivot projekt avtomatizacije, da preizkusite njeno funkcijo. V nasprotnem primeru ne bi smeli porabiti časa za raziskovanje tega. (O tem scenariju govorim, če želite QTP uporabiti za projekt podjetja v živo. Če ga nalagate samo za učne namene, je v redu, da prenesete preizkus.)
Vprašanje št: Kakšna je dejanska cena orodja?
Naslednja je cena orodja za avtomatizacijo. Obstaja ne samo cena licence, temveč tudi cena dodatkov (če je potrebno), pristojbina za podporo, pristojbina za usposabljanje in nadgradnja.
Najprej se pogovorimo o licenci.
a) Vrste licenc:
Obstajajo naslednje vrste licenc.
1) Uporabniška licenca z zaklenjenim vozliščem.
Uporabniška licenca z zaklenjenim vozliščem bo podpirala orodje za avtomatizacijo preskusov, ki se bo uporabljalo v enem fizičnem računalniku v omrežju vašega podjetja. Hkrati lahko v licenciranem računalniku zaženete samo en primerek orodja. Ta licenca je običajno vezana na ime gostitelja računalnika.
2) Sočasna plavajoča uporabniška licenca
Plavajočo uporabniško licenco lahko delijo različni stroji, vendar jo lahko uporablja samo en računalnik hkrati. Ni vezano na ime računalnika ali kar koli drugega, temveč za upravljanje iste licence v različnih računalnikih uporablja upravitelja licenc (nameščen na strežniku).
V bistvu z licenco Node Locked nimate svobode, da orodje namestite na en stroj, ga odstranite in nato znova namestite na kateri koli drug računalnik. Toda s plavajočo uporabniško licenco lahko to storite.
3) Licenca za zagon
Zgoraj omenjeni dve vrsti licenc se običajno kupujejo za 'razvoj' skriptov. To so torej 'razvojne' licence. Če želite izvajati skripte na različnih računalnikih, morate imeti licenco za 'izvajanje' ali 'izvajanje' za vsak računalnik.
Primer:
Če mora na primer preizkuševalec na istem računalniku razviti in izvesti testne primere, zadostuje ena razvojna licenca.
Če pa mora razviti na enem računalniku in izvesti testne primere na treh različnih virtualnih ali fizičnih strojih, mora kupiti eno licenco za 'razvoj' in tri licence za izvajanje.
Nekateri ponudniki ponujajo brezplačne licence za izvajanje (kot je kodiran uporabniški vmesnik), nekateri pa s ceno (npr. Test Complete, Ranorex itd.). Torej je vse odvisno od prodajalca.
4) Odprtokodna licenca
Izbira vašega podjetja je, da se odločite za komercialno orodje in plačate stroške ali pa za odprtokodno orodje.
Komercialna orodja so draga, vendar nudijo veliko podporo in so enostavna za uporabo z veliko materiala za učenje. Komercialna orodja so običajno 'eno orodje za vse potrebe'. Odprtokodna orodja so brezplačna, vendar jih je na splošno težje naučiti. Uradne podpore je malo, rešitve pa lahko poiščete na različnih forumih. Odprtokodne rešitve so običajno za posebne potrebe.
b) Stroški podpore, nadgradnje in usposabljanja:
podatkovno testiranje v soapui z uporabo groovy skripta
Za podporo, usposabljanje in nadgradnjo boste morda morali poklicati predstavnika podjetja. Nekatera podjetja ponujajo posebne popuste pri množičnem nakupu licenc, zato včasih te informacije na spletnih mestih niso jasno omenjene. Informacije boste dobili samo prek klica ali e-pošte.
Vprašanje št: Ali orodje podpira operacijski sistem / brskalnik ali napravo, v kateri se izvaja vaša aplikacija?
To vprašanje je običajno odvisno od vrste aplikacije, ki jo uporabljate.
a) Če temelji na namizju:
Če delate z namizno aplikacijo, jo opišite, koliko operacijskih sistemov želite preizkusiti. Delal sem na namizni aplikaciji in jo želel preizkusiti v sistemih Windows 7 in Windows 8.1. Zato sem izbral Kodirani uporabniški vmesnik, ker podpira oboje.
b) Če temelji na brskalniku
Če delate s spletno aplikacijo, jo opišite, koliko brskalnikov želite preizkusiti. Svoje testne primere sem hotel izvesti v FireFoxu, Chromu in IE. Za svojo spletno aplikacijo sem izbral selen, ker podpira vse te brskalnike. Poskrbite, da mora izbrano orodje podpirati starejše in novejše različice zahtevanih brskalnikov.
c) Če je mobilno
Če delate z mobilnimi aplikacijami, morate vedeti, na katerih mobilnih operacijskih sistemih morate izvajati svoje testne primere. Če se vaša aplikacija izvaja v sistemu Android in IOS, bi to moralo podpirati vaše orodje. Selenium ima ločene gonilnike za zagon skriptov v sistemih Android, IOS, Windows Phone in BlackBerry. Za vsak mobilni OS lahko uporabite tudi ločeno orodje. Obstajajo Robotium za Android, Appium za IOS in Android ter CodedUI za Windows aplikacije za telefon.
Ponovno gre za razpravo o odprtokodni in komercialni različici. Kot lahko vidite, obstajajo ločeni odprtokodni programi orodja za testiranje spletnih , mobilni in namizne aplikacije. Če pa se odločite za komercialno orodje, kot je Test Complete, Ranorex ali Test Studio, lahko preizkusijo vse tri vrste (mobilne, namizne in brskalniške aplikacije). V primeru komercialnega orodja se morate naučiti samo enega orodja za preizkušanje spletnih, namiznih in mobilnih aplikacij.
Vprašanje št: Ali orodje podpira tehnologije in nadzor drugih proizvajalcev, ki se uporabljajo v vaši aplikaciji?
To je zelo pomemben vidik pri izbiri orodja. Iz prve roke bi morali vedeti, katere tehnologije se uporabljajo v vaši aplikaciji. Posvetujte se s svojimi razvijalci in si jih zapišite. Če v spletnih aplikacijah uporabljajo HTML 5 ali SilverLight, pozor, ni veliko orodij za avtomatizacijo, ki bi jih podpirala. Če orodje zahteva podporo za te tehnologije, prenesite poskusno različico tega orodja in poskusite prepoznati različne predmete v svoji aplikaciji. Če jih orodje ne prepozna, je njihov zahtevek napačen. Ta dejavnost vas bo rešila poznejše bede.
Primerjalna matrika orodij za avtomatizacijo preskusov:
Naslednja tabela primerja različna orodja glede na njihovo ceno licenciranja in podporo različnim tehnologijam. (Ta grafikon bi morali jemati kot učno prakso pri ustvarjanju primerjav med različnimi orodji, vendar natančnost podanih podatkov ni 100%)
(Kliknite na sliko za ogled povečave)
Y = podprto, N = ni podprto, U = neznano
Vprašanje št: Koliko jezikov orodje podpira? Ali imate kvalificirane vire za te jezike?
Učenje orodja je en vidik. Učenje jezika je še en vidik. Če imate vire s strokovnim znanjem o Javi in vaše orodje ne podpira Jave, bo čas za učenje novega jezika dodan vašim prizadevanjem za avtomatizacijo.
Drug vidik je, da če je vaš izdelek zgrajen na Javi, morate imeti ekipo razvijalcev, ki so strokovnjaki za Javo. Ti razvijalci lahko ekipi za avtomatizacijo pomagajo tudi pri jezikovnih vprašanjih. Pomembna je izbira orodja, ki ponuja jezik, ki pozna vaše vire in vam bo pomagalo zmanjšati krivuljo učenja za vaše vire.
The Selen WebDriver ponuja pisanje skriptov v več jezikih, kot so C #, Java, Python, Ruby in JavaScript. TestComplete ponuja tudi skripte za pisanje v več skriptnih jezikih, kot so VBScript, JScript, DelphiScript, C ++ Script in C # Script.
6. vprašanje: Ali orodje podpira povezovanje z različnimi viri podatkov?
Če uporabljamo ogrodje za avtomatizacijo, na primer na podlagi ključnih besed ali podatkov, moramo imeti orodje za povezavo katerega koli vira podatkov. Če orodje omogoča enostavno povezljivost z različnimi viri podatkov, bo zelo koristno.
Oglejte si podporo za pogoste vire podatkov, kot so datoteka CSV, datoteka Excel, datoteka XML in zbirka podatkov. Če so ti prisotni v orodju, ste pripravljeni.
Vprašanje št: Kako je z mehanizmom poročanja orodja za avtomatizacijo?
Ko izvedemo skript, bo ali prenesel ali odpovedal. V primeru prepustnice ni potrebnih veliko informacij, razen informacij o trajanju in okolju. Toda v primeru okvare potrebujemo izčrpno poročilo o napaki. Poročilo bi nam moralo povedati, da točno na katerem koraku skript ne uspe. Posnetek trenutka okvare bo dodatna prednost.
To poročilo je treba izvoziti v različne formate, da ga lahko delimo z zainteresiranimi stranmi. V veliko orodij so te možnosti vgrajene, v nekaterih orodjih pa lahko poročilo naredite celovito. To je še ena stvar, na katero morate biti pozorni, ko prenesete poskusno različico orodja. Če daje celovita poročila o napakah, je najbolje za organizacijo.
Vprašanje št. 8: Ali je mogoče orodje integrirati s testnimi primeri in repozitoriji za upravljanje napak?
Obstaja velika verjetnost, da vaša organizacija že uporablja kateri koli testni primer oz orodje za upravljanje napak . Podjetja očitno želijo, da se njihovo avtomatizirano orodje integrira z obstoječim orodjem za upravljanje testnih primerov, tako da se s celotnim življenjskim ciklom aplikacije pravilno upravlja. Ta vidik je treba upoštevati tudi pri izbiri orodja za avtomatizacijo preskusov.
QTP podpira QLM, podpira kodirani uporabniški vmesnik TFS in TestComplete podpira QAComplete. Nekatera odprtokodna orodja imajo tudi podporo za integracijo z obstoječimi odprtokodnimi orodji za upravljanje preskusov. Vse je odvisno od tega, kaj vaša organizacija dejansko uporablja.
Vprašanje št: Kako je z uradno tehnično podporo za orodje?
Tu govorimo samo o komercialnih orodjih. Ko izberete komercialno orodje, je njihov vidik podpore zelo pomemben. Oglejte si gradivo za usposabljanje na spletnem mestu. Ali spletno mesto vsebuje videoposnetke in vadnice? Ali ima spletno mesto uradni forum za vprašanja? Prenesite preskusno različico in na njihovem forumu posnemite vprašanje in si oglejte, koliko dni dobi odgovor. Ali nudijo podporo za klic?
Zgornja vprašanja si je res treba zastaviti vsakič, ker za orodje porabite dober znesek. Če orodje nima dobre podpore, se ga ne trudite kupiti.
Vprašanje št: Nekaj tehničnih vidikov, ki jih je treba videti
Obstaja tudi nekaj drugih tehničnih vidikov, kot so:
a) Podpora za snemanje in predvajanje
Pri avtomatizaciji preskusov ni priporočljiv pristop, vendar je dobro imeti orodje. Poenostavlja postopek učenja orodja in pomaga lažje avtomatizirati scenarije.
kako uporabiti torrent datoteko po prenosu
b) Različni načini prepoznavanja predmetov in podpora za preslikavo objektov
Izbira istega predmeta z različnimi metodami bi morala biti različna. Nekatere predmete je težko prepoznati. Torej so različne metode izbire vedno v pomoč.Na primer, selen podpira izbiranje predmetov po id, ime, razred, test povezave, XPATH , Izbirnik CSS in JavaScript. Tu je vadnica o - kako QTP enolično prepozna predmete . Če ena izbirna metoda ne deluje, lahko izbiramo med različnimi metodami, ki so vedno koristne.
Podobno bi morala obstajati možnost za pravilno preslikavo teh predmetov v skladišču predmetov. To skladišče mora biti enostavno posodobljivo in upravljano. Samo, da vas spomnim, da Selenium nima vgrajene podpore za preslikavo objektov.
c) Različne kontrolne točke ali podpora za trditve.
Testni primer je bil sprejet ali neuspešen na podlagi kontrolnih točk ali trditev. Če ima orodje različne metode za preverjanje vaših pričakovanih rezultatov, je koristno. QTP ima različne kontrolne točke, kot so Standardno , Bitna slika , Tabela , XML, zbirka podatkov in točke preverjanja vsebine datoteke.
d) Ravnanje s scenariji izterjave.
Če testni primer ne uspe in želite nadaljevati z izvajanjem, ali orodje tako enostavno podpira? Če je v orodju enostavno upravljati scenarije obnovitve, vam bo omogočilo izvajanje testnih primerov brez napak. Testne primere lahko izvajate ponoči, zjutraj pa dobite rezultate, ki navajajo, kateri testni primeri niso uspeli in kateri testni primeri so opravljeni. To se bo zgodilo le, če bo orodje zlahka upravljalo z obnovitvijo po neuspelih testnih primerih. V nasprotnem primeru bo pri obdelavi scenarijev obnovitve zapravljeno veliko truda za avtomatizacijo. Glej upravljanje scenarijev obnovitve v QTP .
Zaključek
Vedno si zapomnite, da nobeno orodje ni dobro ali slabo orodje. Vse je odvisno od vaših zahtev in narave izdelka.
Selen je morda najbolj priljubljeno orodje za avtomatizacijo, če pa je vaš izdelek na namizju, vam to orodje ne koristi. Najprej se seznanite s svojim izdelkom in nato po smernicah, omenjenih v tej vadnici, poiščite ustrezno orodje, ki ustreza vašim zahtevam.
Pravilna izbira orodij za avtomatizacijo ima ključno vlogo pri uspešni avtomatizaciji.
Naslednja vadnica - Naslednja vadnica v tej seriji je o „Okvirjih za razvoj skript in avtomatizacijo s primeri“. Še enkrat preverite vse vadnice v tej seriji na tej strani .
Vprašanja / komentarje o izbiri pravega orodja za avtomatizacijo lahko objavite spodaj.
PREV Tutorial # 3 | NASLEDNJA Vadnica # 5
Priporočeno branje
- Sikuli GUI Automation Test Tool - Priročnik za začetnike 2. del
- Alfa testiranje in beta testiranje (popoln vodnik)
- Vadnica Geba - Testiranje avtomatizacije brskalnika z orodjem Geb
- Popoln vodnik za preizkušanje preverjanja gradnje (testiranje BVT)
- Najboljša orodja za testiranje programske opreme 2021 (QA Test Automation Tools)
- Funkcionalno testiranje vs nefunkcionalno testiranje
- Vodnik po korakih za izvajanje dokazov o konceptu (POC) pri preizkušanju avtomatizacije
- 10-stopenjski postopek samodejnega testiranja: kako začeti samodejno testiranje v svoji organizaciji