Enhavtabelo[Kaŝi][Montri]
Ĉiu retejo-disvolva teamo faras aron da testoj pri siaj produktoj, tamen la reta solvo, kiu estas donita poste, havas difektojn.
Eĉ kun la plej bona manlibro-testado, difektoj neeviteble ŝteliras kaj reaperas, malgraŭ la klopodoj de la QA-teamo por kapti ilin antaŭ la unua eldono.
Kiam temas pri pliigi la efikecon kaj amplekson de via programaro-testado, aŭtomatigita retejo-testado estas via plej bona elekto.
Por interreta testado, la Python programlingvo ofertas robotkadron kiu povas utiligi eksterajn bibliotekojn kiel ekzemple seleno.
En ĉi tiu afiŝo, ni trarigardos testajn kazojn kaj aliajn terminojn ligitajn al la Python-robotkadro.
Kio estas robotkadro?
Robota Kadro estas fleksebla malfermfonta senmarka aŭtomatiga kadro skribita en Python, kiu estas uzata por aŭtomatigita programaro-testado, robotproceza aŭtomatigo, akceptotestado kaj akcept-test-movita evoluo.
En simplaj vortoj, ĝi estas Python-bazita ŝlosilvorto-movita testa aŭtomatiga kadro.
Ĝi ebligas al testistoj aŭtomatigi kaj konservi komplikajn procezskriptojn efike. La kadro povas esti uzata por testi uzantinterfacojn kaj aplikajn programajn interfacojn.
Ĝi permesas al testinĝenieroj utiligi Selenon aldone al multaj aliaj integriĝoj. Seleno estas industrinorma ilo por aŭtomatigi uzantkonduton kaj skribi uzantbazitajn retumilon interagojn por iu ajn retejo.
Kio estas akceptotestado?
Ĝi estas maniero determini la kapablon de sistemo. La celo de akceptotestado estas taksi la kapablojn de sistemo rilate al komercaj bezonoj.
Kio estas robota proceza aŭtomatigo?
RPA, aŭ robotproceza aŭtomatigo, estas metodo por minimumigi homan laboron per uzado de programaro kiu asimilas maŝinlernado kaj AI-kapabloj. RPA estas uzata por aŭtomatigi altnivelajn, ripetemajn procezojn.
Kio estas akcepto-test-movita evoluo?
Akcept-test-movita evoluo, ofte konata kiel ATDD, estas evolutekniko kiu dependas de komunikado inter komercaj klientoj, programistoj kaj testistoj. Ili kunlaboras kaj faras akceptotestojn antaŭ ol deploji la funkcion.
Robotkadro - Altnivela arkitekturo
Robot Framework estas kadro kiu estas aplikado kaj teknologio agnostika. Ĝia arkitekturo estas tre modula, kiel oni vidas en la suba bildo.
La testaj datumoj estas prezentitaj en simpla, redaktebla tabelformato. Robot Framework analizas datumojn, faras testkazojn kaj kreas protokolojn kaj raportojn kiam ĝi estas komencita.
La kernkadro havas neniun scion pri la celo sub testo, kaj bibliotekoj administras ĉiujn interagojn kun ĝi. Bibliotekoj povas utiligi malsupernivelajn testajn ilojn kiel ŝoforojn aŭ rekte utiligi aplikaĵinterfacojn.
Trajtoj
- Ĝi faciligas datum-movitan testadon permesante Testaŭtomatigon por diversaj datumtipoj.
- Ĝi evitas uzi signifajn kvantojn da kodo kaj anstataŭe uzas kondut-movitan testan strategion.
- Ĝi povas funkcii kun bibliotekoj kaj funkcioj de triaj.
- Ŝlosilvortoj (antaŭdifinitaj aŭ uzant-difinitaj) estas uzataj en tabela stilo por skribi testkazojn.
- Uzantoj povas krei ŝlosilvortojn.
- Oni rajtas uzi variablojn.
- La Kadro uzas ŝlosilvorton-metodon, en kiu skriptoj estas skribitaj uzante etajn, facile kompreneblajn terminojn (aŭ antaŭdifinitajn aŭ uzant-difinitajn).
- Post ĉiu konstruo, raportoj,
- kaj ŝtipoj estas kreitaj.
- Ĝi generas ĝisfundajn raportojn kaj protokolojn pri la ekzekutstatuso de la skripto, kiu estas precipe utila en la okazo ke la skripto malsukcesas.
Robota kadro lernilo
Ni plonĝu enen.
1. Robota kadro Instalado
La pip-pakaĵo estas proponita por instali la robotkadron en Python. Por instali la kadron, rulu la sekvan komandon.
Vi devus povi vidi kaj la interpretiston kaj robotan kadro-versiojn post sukcesa instalado uzante la opcion -version.
2. Bibliotekoj
- Konstruita - Ĉi tio estas norma biblioteko, kiu enhavas aron de ofte uzataj ŝlosilvortoj, kiuj estas aŭtomate importitaj kaj disponeblaj ĉiam.
- Kolekto - Ĝi provizas aron da ŝlosilvortoj por labori kun Python-listoj kaj vortaroj. La ŝlosilvortoj de la biblioteko povas esti uzataj por ŝanĝi kaj krei valorojn el listoj kaj vortaroj.
- Dialogoj - Norma biblioteko por haltigi la ekzekuton kaj preni uzantajn rimarkojn. Depende ĉu se la testoj funkcias, la dialogoj estas iom malkonsekvencaj.
- DateTime ebligas vin generi kaj modifi informojn pri dato kaj horo.
- Operaciumo - Ĝi ebligas al la robotkadro fari diversajn mastrum-rilatajn taskojn en la sistemo dum ĝi funkcias. Ĝi povas, interalie, efektivigi instrukciojn kaj produkti kaj modifi datumojn rekte.
- Procezo - Ĉi tiu biblioteko estas uzata por ruli procezojn uzante Python-submodulojn kaj la malferman klason. La ŝlosilvorto pri rulprocezo estas uzata por atendi kurantan procezon en la sistemo kaj kompili ĝin.
- XML ankaŭ estas tekstbiblioteko uzata de la robotkadro por kontroli kaj modifi XML-dokumentojn.
- La ŝnuro estas pako por manipuli kaj validigi ŝnurojn.
- Telnet aplikas, kiu permesas vin interagi per telnet. La telnet-biblioteko permesas vin konekti al telnet-servilo per regula TCP/IP-konekto kaj plenumi komandojn.
3. Enkonstruitaj iloj
En robotkadro, ekzistas ĉefe kvar enkonstruitaj iloj kiuj estas uzitaj:
- Rebot - Iloj por krei protokolojn kaj raportojn el XML-eligo kaj kunfandi multajn elirojn samtempe.
- Testdoc — Surbaze de testkazoj, Robot Framework kreas altnivelan HTML-dokumentadon.
- Libdoc - Ŝlosilvorto-dokumentada generilo por bibliotekoj kaj rimeddosieroj.
- Tidy - Robotaj Kadraj Iloj por purigi kaj konverti datumdosierojn al malsama formato.
4. Testkazoj
Anstataŭ aŭtomatigitaj testkazoj, testkazoj en la robotkadro povas esti skribitaj en baza angla. La sekvaj testoj povas esti uzataj por klasifiki la testscenarojn.
- Laborfluaj Testoj
- Altnivelaj Testoj
- Daten-movitaj Testoj
Laborfluaj Testoj
La testkazoj de la robotkadro estas ofte skribitaj en tabela sintakso. La unua kolumno de testkazo enhavas la testnomojn, kaj la testkazo komenciĝas per io ajn en la kolumno kaj finiĝas per la sekva testkazonomo aŭ la fino de la tabelo.
Ni rigardu realan ekzemplon por kompreni kiel ĉi tio funkcias.
- Uzanto povas krei konton kaj ensaluti.
- La uzanto ne povos ensaluti se la pasvorto estas malĝusta.
Altnivelaj Testoj
La dua kolumno tipe inkluzivas ŝlosilvorton, kun la escepto de fiksado de variabloj kun ŝlosilvorto-skribitaj valoroj.
La testkazoj de la robotkadro povas esti konstruitaj uzante nur altnivelajn ŝlosilvortojn kaj neniujn poziciajn parametrojn. Por pli kompreni altnivelan testadon, konsideru la sekvan ekzemplon.
Daten-movitaj Testoj
Daten-movita testado izolas testajn datumojn prefere ol simulado de proceduroj. En la robotkadro, la [ŝablona] agordo difinas la testkazon por datum-movita testo.
5. Ŝlosilvortoj
Por konstrui provojn en la robotkadro, ŝlosilvortoj de du fontoj estas uzataj.
- Ŝlosilvortoj por Biblioteko
- Ŝlosilvortoj por la Uzanto
Ŝlosilvortoj por Biblioteko
Normaj bibliotekoj difinas ĉion el la plej malsupra-nivela terminologio, kiu povas esti efektivigita uzante komputillingvojn kiel Python kaj Java.
Normaj, eksteraj kaj kutimaj bibliotekoj estas inter la testbibliotekoj disponeblaj kun la robotkadro. La kerna kadro inkluzivas enkonstruitan, ekrankopion, OS kaj aliajn normajn bibliotekojn.
Ŝlosilvortoj por la Uzanto
La kapablo generi unikajn altnivelajn ŝlosilvortojn el ekzistantaj frazoj estas unu el la plej gravaj trajtoj de la robotdezajno. Por pli kompreni kiel ĝi funkcias, ni rigardu ekzemplon.
6. Variabloj
Variabloj estas grava parto de ĉiu provo en robotkadro. Variablo estas bonega aliro por specifi ajnajn datumojn en testkazo, kiu estas kondiĉigita de ŝanĝo aŭ ŝanĝebleco.
Ni rigardu kiel difini variablojn en prova kazo.
Specifante Variablojn
Krom uzant-difinitaj variabloj, la robotkadro havas enkonstruitajn variablojn kiel $TEMPDIR kaj $/, kiujn ni uzis en la antaŭa ekzemplo.
Uzado de Variaĵoj
Variabloj povas esti uzataj ie ajn en la prova kazo.
Tamen, ili estas plej ofte uzataj kiel ŝlosilvortaj argumentoj. Konsideru la sekvan ekzemplon por ilustri kion mi volas diri.
7. Organizado de provoj
Testkazdosieroj estas uzataj por konstrui robottestkazojn, sed ili ankaŭ povas esti grupigitaj en dosierujojn por krei testan hierarkion. Testaro estas grupiĝo de testkazoj. Testaro konsistas el ĉiuj dosieroj enhavantaj testkazojn.
Uzante dosierujojn, la testkazoj povas esti strukturitaj en hierarkio; ĉiuj ĉi tiuj dosierujoj provizas altnivelajn testajn arojn kun nomoj derivitaj de la dosierujoj.
Uzante Agordojn kaj Teardowns
La opcioj "Testo-Agordo" kaj "Testo Malkonstruo" de la agorda tablo povas esti uzataj por efektivigi specifan ŝlosilvorton en testo antaŭ aŭ post kiam ĝi estas finita. Vi ankaŭ povas uzi "Suite Setup" kaj "Suite Teardown" por ekzekuti ŝlosilvortojn antaŭ aŭ post testaro.
Vi povas krei kutimon [Agordo] kaj [Malkonstruo] en prova kazo, simile al [Ŝablono]. Konsideru la sekvan scenaron por pli bone kompreni ĉi tion.
Uzante Etikedojn
La robotkadro permesas etikedojn esti uzataj por provizi senpagajn metadatenojn por testi kazojn. "Forti Etikedoj" kaj "Defaŭltaj Etikedoj" povas esti uzataj por agordi etikedojn en dosiero. [Etikedoj], kiel [Ŝablono], povas esti uzata por asigni etikedojn al ununura testkazo. Ni rigardu ekzemplon por vidi kiel ni uzas etikedojn.
La raporto inkluzivos etikedojn kun testkazoj ligitaj al ili, same kiel statistikojn bazitajn sur la etikedoj, post ekzekuto.
avantaĝoj
- Estas facile agordi Robot Framework.
- Ĝi baziĝas sur uzado de ŝlosilvortoj.
- Ĝi ebligas vin uzi Gherkin.
- Ĝi funkcias kun ambaŭ poŝtelefonaj kaj ret-bazitaj apoj.
- La fundamentoj de la Robota Kadro estas facile kompreneblaj.
- Ĝi uzas malaltkodan aliron.
- Vindozo, Mac OS X, Unikso kaj Linukso estas ĉiuj subtenataj.
- Python, IronPython, kaj PyPy estas ĉiuj subtenataj programlingvoj.
- Ĝi funkcias kun ĉiuj ĉefaj retumiloj.
- Robot Framework estas senpage uzebla, malfermfonta aŭtomatiga ilo.
contras
- Paralela testa ekzekuto ne estas subtenata de Robot Framework.
- La Robota Kadro estas malfacile sekvi.
- HTML-raportoj en la Robota Kadro estas malfacile ŝanĝeblaj.
- Sencimigi iujn problemojn pri Robot Framework povus esti malfacila.
- Indentaĵo estas strikte devigita en la Robota Kadro.
konkludo
La Robota Platformo estas senpaga kaj malfermfonta akcepta testado kaj akcepto-test-movita disvolva kadro.
La testkazoj de la robotkadro estas konstruitaj sur ŝlosilvortoj esprimitaj en tabela stilo, kiu faciligas ilin kompreneblajn kaj donas precizajn informojn pri la signifo de la testkazo.
Ĝi estas vere oportuna kaj simple uzi.
Iuj el vi uzis ĝin antaŭe, do se vi havas viajn testojn agordita kaj via Android/iOS-aplikaĵo preta por funkcii, provu ĝin.
Vi miros pri kiom bone funkcias aferoj kaj kiom baldaŭ akceptotestado povas esti kompletigita.
Lasi Respondon