Turinys[Slėpti][Rodyti]
Kiekviena žiniatinklio kūrimo komanda atlieka savo produktų testus, tačiau vėliau pateiktas žiniatinklio sprendimas turi trūkumų.
Net ir atliekant geriausius rankinio testavimo darbus, defektai neišvengiamai atsiranda ir atsiranda, nepaisant kokybės užtikrinimo komandos pastangų juos sugauti prieš pirmą išleidimą.
Kai reikia padidinti programinės įrangos testavimo efektyvumą ir apimtį, automatinis žiniatinklio testavimas yra geriausias jūsų pasirinkimas.
Internetiniam testavimui Python programavimo kalba siūlo roboto sistemą, kuri gali panaudoti išorines bibliotekas, pvz., seleną.
Šiame įraše apžvelgsime bandomuosius atvejus ir kitus terminus, susijusius su Python roboto sistema.
Kas yra roboto karkasas?
Robotų karkasas yra lanksti atvirojo kodo bendroji automatizavimo sistema, parašyta Python, kuri naudojama automatizuotam programinės įrangos testavimui, robotizuotų procesų automatizavimui, priėmimo testavimui ir priėmimo testu pagrįstam kūrimui.
Paprastais žodžiais tariant, tai yra Python pagrįsta raktiniais žodžiais pagrįsta testavimo automatizavimo sistema.
Tai leidžia testuotojams efektyviai automatizuoti ir prižiūrėti sudėtingus proceso scenarijus. Sistema gali būti naudojama vartotojo sąsajoms ir programų programavimo sąsajoms išbandyti.
Tai leidžia bandymų inžinieriams naudoti seleną be daugelio kitų integracijų. Selenas yra pramonės standartas įrankis, skirtas automatizuoti naudotojų elgesį ir kurti bet kurios svetainės naudotojo žiniatinklio naršyklės sąveiką.
Kas yra priėmimo testas?
Tai būdas nustatyti sistemos pajėgumą. Priėmimo testavimo tikslas – įvertinti sistemos galimybes atsižvelgiant į verslo poreikius.
Kas yra robotų procesų automatizavimas?
RPA arba robotų procesų automatizavimas yra būdas sumažinti žmogaus darbo sąnaudas naudojant programinę įrangą, kurioje yra mašininis mokymasis ir AI galimybes. RPA naudojamas automatizuoti aukšto lygio pasikartojančius procesus.
Kas yra priėmimo testu pagrįsta plėtra?
Priėmimo testu paremtas kūrimas, dažnai žinomas kaip ATDD, yra kūrimo technika, pagrįsta verslo klientų, kūrėjų ir bandytojų bendravimu. Prieš įdiegdami funkciją, jie bendradarbiauja ir atlieka priėmimo testus.
Robotų sistema – aukšto lygio architektūra
„Robot Framework“ yra sistema, kuri yra programų ir technologijų agnostikas. Jo architektūra yra labai modulinė, kaip matyti toliau pateiktame paveikslėlyje.
Bandymo duomenys pateikiami paprastu, redaguojamu lentelės formatu. „Robot Framework“ analizuoja duomenis, atlieka bandomuosius atvejus ir sukuria žurnalus bei ataskaitas paleidus.
Pagrindinė sistema neturi žinių apie bandomą tikslą, o bibliotekos valdo visas sąveikas su juo. Bibliotekos gali naudoti žemesnio lygio testavimo įrankius kaip tvarkykles arba tiesiogiai naudoti programų sąsajas.
Savybės
- Tai palengvina duomenimis pagrįstą testavimą, leisdama įvairių testų automatizavimą duomenų tipai.
- Jis vengia naudoti daug kodo ir vietoj to naudoja elgesiu pagrįstą testavimo strategiją.
- Jis gali dirbti su bibliotekomis ir funkcijomis iš trečiųjų šalių.
- Raktiniai žodžiai (iš anksto apibrėžti arba vartotojo nustatyti) naudojami lentelės stiliumi rašant bandomuosius atvejus.
- Vartotojai gali kurti raktinius žodžius.
- Leidžiama naudoti kintamuosius.
- Framework naudojamas raktiniais žodžiais pagrįstas metodas, kai scenarijai rašomi naudojant mažyčius, lengvai suprantamus terminus (iš anksto apibrėžtus arba vartotojo apibrėžtus).
- Po kiekvienos konstrukcijos, ataskaitos,
- ir sukuriami žurnalai.
- Jis generuoja išsamias ataskaitas ir žurnalus apie scenarijaus vykdymo būseną, o tai ypač naudinga tuo atveju, jei scenarijus sugenda.
Robotų sistemos pamoka
Pasinerkime į
1. Roboto karkaso diegimas
Pip paketas siūlomas norint įdiegti roboto sistemą Python. Norėdami įdiegti sistemą, paleiskite šią komandą.
Turėtumėte galėti peržiūrėti ir interpretatoriaus, ir roboto sistemos versijas, kai sėkmingai įdiegsite naudodami parinktį -version.
2. Bibliotekos
- Builtin – tai standartinė biblioteka, kurioje yra dažniausiai naudojamų raktinių žodžių rinkinys, kuris automatiškai importuojamas ir pasiekiamas visą laiką.
- Kolekcija – jame pateikiamas raktinių žodžių rinkinys, skirtas darbui su Python sąrašais ir žodynais. Bibliotekos raktažodžiai gali būti naudojami keisti ir kurti reikšmes iš sąrašų ir žodynų.
- Dialogai – standartinė biblioteka, skirta sustabdyti vykdymą ir priimti vartotojų atsiliepimus. Priklausomai nuo to, ar vykdomi testai, dialogo langai yra šiek tiek nenuoseklūs.
- DateTime leidžia generuoti ir keisti datos ir laiko informaciją.
- Operacinė sistema – leidžia roboto sistemai atlikti įvairias su operacine sistema susijusias užduotis sistemoje, kol ji veikia. Jis, be kita ko, gali vykdyti instrukcijas ir tiesiogiai kurti bei keisti duomenis.
- Procesas – ši biblioteka naudojama procesams vykdyti naudojant Python submodulius ir atvirąją klasę. Vykdymo proceso raktinis žodis naudojamas laukti sistemoje veikiančio proceso ir jį sukompiliuoti.
- XML taip pat yra teksto biblioteka, kurią roboto sistema naudoja XML dokumentams tikrinti ir modifikuoti.
- Eilutė yra paketas, skirtas manipuliuoti ir patvirtinti eilutes.
- Taikomas „Telnet“, leidžiantis bendrauti per „Telnet“. Telnet biblioteka leidžia prisijungti prie Telnet serverio per įprastą TCP/IP ryšį ir vykdyti komandas.
3. Integruoti įrankiai
Roboto sistemoje daugiausia naudojami keturi integruoti įrankiai:
- „Rebot“ – įrankiai, skirti kurti žurnalus ir ataskaitas iš XML išvesties ir vienu metu sujungti daugybę išėjimų.
- „Testdoc“ – remdamasi bandomaisiais atvejais, „Robot Framework“ sukuria aukšto lygio HTML dokumentaciją.
- Libdoc – raktinių žodžių dokumentacijos generatorius bibliotekoms ir išteklių failams.
- „Tidy“ – „Robot Framework“ įrankiai, skirti duomenų failams valyti ir konvertuoti į kitą formatą.
4. Bandomieji atvejai
Vietoj automatizuotų bandomųjų atvejų, bandomieji atvejai roboto sistemoje gali būti parašyti pagrindine anglų kalba. Bandymo scenarijus klasifikuoti galima naudoti toliau nurodytus testus.
- Darbo eigos testai
- Aukštesnio lygio testai
- Duomenimis pagrįsti testai
Darbo eigos testai
Roboto sistemos bandomieji atvejai dažnai rašomi lentelių sintaksė. Bandymo atvejo lentelės pirmame stulpelyje yra bandymų pavadinimai, o bandomasis atvejis prasideda bet kuo stulpelyje ir baigiasi kitu bandymo atvejo pavadinimu arba lentelės pabaiga.
Pažvelkime į realų pavyzdį, kad suprastume, kaip tai veikia.
- Vartotojas gali susikurti paskyrą ir prisijungti.
- Vartotojas negalės prisijungti, jei slaptažodis bus neteisingas.
Aukšto lygio testai
Antrame stulpelyje paprastai yra raktinio žodžio pavadinimas, išskyrus kintamųjų nustatymą su raktinio žodžio reikšmėmis.
Roboto sistemos bandomieji atvejai gali būti sukurti naudojant tik aukšto lygio raktinius žodžius ir be padėties parametrų. Norėdami geriau suprasti aukšto lygio testavimą, apsvarstykite šį pavyzdį.
Duomenimis pagrįsti testai
Duomenimis pagrįstas testavimas išskiria bandymo duomenis, o ne imituoja procedūras. Roboto sistemoje nustatymas [šablonas] apibrėžia duomenimis pagrįsto bandymo bandymo atvejį.
5. Raktiniai žodžiai
Norint sukurti bandomuosius atvejus roboto sistemoje, naudojami raktiniai žodžiai iš dviejų šaltinių.
- Raktiniai žodžiai bibliotekai
- Raktažodžiai vartotojui
Raktiniai žodžiai bibliotekai
Standartinės bibliotekos apibrėžia visą žemiausio lygio terminologiją, kuri gali būti įgyvendinta naudojant tokias kompiuterines kalbas kaip Python ir Java.
Standartinės, išorinės ir tinkintos bibliotekos yra vienos iš bandomųjų bibliotekų, kurias galima rasti naudojant roboto sistemą. Pagrindinę sistemą sudaro įmontuotos, ekrano kopijos, OS ir kitos standartinės bibliotekos.
Raktažodžiai vartotojui
Galimybė generuoti unikalius aukšto lygio raktinius žodžius iš esamų frazių yra viena iš svarbiausių roboto dizaino savybių. Norėdami geriau suprasti, kaip tai veikia, pažvelkime į pavyzdį.
6. Kintamieji
Kintamieji yra svarbi kiekvieno bandomojo atvejo dalis roboto sistemoje. Kintamasis yra puikus būdas nurodyti bet kokius duomenis bandymo atveju, kurie gali keistis arba kintamai.
Pažiūrėkime, kaip apibrėžti kintamuosius bandomuoju atveju.
Kintamųjų nurodymas
Be vartotojo nustatytų kintamųjų, roboto sistemoje yra įmontuotų kintamųjų, tokių kaip $TEMPDIR ir $/, kuriuos naudojome ankstesniame pavyzdyje.
Kintamųjų naudojimas
Kintamieji gali būti naudojami bet kurioje bandomojo atvejo vietoje.
Tačiau jie dažniausiai naudojami kaip raktinių žodžių argumentai. Apsvarstykite šį pavyzdį, kad parodytumėte, ką turiu omenyje.
7. Bandomųjų bylų organizavimas
Bandomųjų atvejų failai naudojami kuriant roboto bandymo atvejus, tačiau juos taip pat galima sugrupuoti į katalogus, kad būtų sukurta bandymų rinkinio hierarchija. Bandymų rinkinys yra bandomųjų atvejų grupė. Bandymų rinkinį sudaro visi failai, kuriuose yra bandomųjų atvejų.
Naudojant katalogus, bandomieji atvejai gali būti suskirstyti į hierarchiją; visi šie katalogai teikia aukšto lygio testų rinkinius su pavadinimais, kilusiais iš katalogų pavadinimų.
Sąrankų ir nuplėšimų naudojimas
Nustatymų lentelės parinktis „Test Setup“ ir „Test Teardown“ galima naudoti norint atlikti konkretų raktinį žodį atliekant bandymą prieš arba po jo. Taip pat galite naudoti „Suite Setup“ ir „Suite Teardown“, kad vykdytumėte raktinius žodžius prieš arba po bandomojo rinkinio.
Bandomuoju atveju galite sukurti tinkintus [Setup] ir [Teardown], panašius į [Šablonas]. Apsvarstykite toliau pateiktą scenarijų, kad tai geriau suprastumėte.
Žymų naudojimas
Roboto sistema leidžia naudoti žymas, kad būtų galima teikti nemokamus metaduomenis testavimo atvejams. „Priverstinės žymos“ ir „Numatytosios žymos“ gali būti naudojamos žymoms faile nustatyti. [Žymos], kaip ir [Šablonas], gali būti naudojamos žymoms priskirti vienam bandomajam atvejui. Pažvelkime į pavyzdį, kad pamatytume, kaip naudojame žymas.
Į ataskaitą bus įtrauktos žymos su su jomis susietais bandomaisiais atvejais, taip pat statistika, pagrįsta žymomis po vykdymo.
Argumentai "už"
- „Robot Framework“ nustatyti paprasta.
- Tai pagrįsta raktinių žodžių naudojimu.
- Tai leidžia naudoti kornišoną.
- Tai veikia su abiem mobiliosios ir žiniatinklio programos.
- „Robot Framework“ pagrindus lengva suvokti.
- Jis naudoja žemo kodo metodą.
- Palaikomos „Windows“, „Mac OS X“, „Unix“ ir „Linux“.
- Python, IronPython ir PyPy yra palaikomos programavimo kalbos.
- Jis veikia su visomis pagrindinėmis interneto naršyklėmis.
- Robot Framework yra nemokamas atvirojo kodo automatizavimo įrankis.
Trūkumai
- Robot Framework nepalaiko lygiagretaus bandymo vykdymo.
- Sunku neatsilikti nuo robotų sistemos.
- „Robot Framework“ HTML ataskaitas sunku pakeisti.
- Kai kurių „Robot Framework“ problemų derinimas gali būti sudėtingas.
- Įtraukimas yra griežtai vykdomas Robotų sistemoje.
Išvada
Robotų platforma yra nemokama atvirojo kodo priėmimo testavimo ir priėmimo bandymais pagrįsta kūrimo sistema.
Roboto sistemos bandomieji atvejai yra sukurti pagal raktinius žodžius, išreikštus lentelės stiliumi, todėl juos lengva suprasti ir pateikiama tiksli informacija apie bandomojo atvejo reikšmę.
Tai tikrai patogu ir paprasta naudoti.
Kai kurie iš jūsų jį naudojo anksčiau, todėl, jei jau nustatėte testus ir paruošėte „Android“ / „iOS“ programą, išbandykite.
Būsite nustebinti, kaip gerai viskas vyksta ir kaip greitai gali būti baigtas priėmimo testas.
Palikti atsakymą