Innholdsfortegnelse[Gjemme seg][Forestilling]
Hvert webutviklingsteam gjennomfører et sett med tester på produktene sine, men nettløsningen som gis senere har mangler.
Selv med den fineste manuelle testingen, kommer defekter uunngåelig inn og dukker opp igjen, til tross for innsatsen fra QA-teamet for å fange dem før den første utgivelsen.
Når det gjelder å øke effektiviteten og omfanget av programvaretestingen din, er automatisert netttesting det beste valget.
For online testing, Python programmeringsspråk tilbyr et robotrammeverk som kan utnytte eksterne biblioteker som selen.
I dette innlegget vil vi gå gjennom testtilfeller og andre termer knyttet til Python-robotrammeverket.
Hva er et robotrammeverk?
Robotramme er et fleksibelt generisk automatiseringsrammeverk med åpen kildekode skrevet i Python som brukes til automatisert programvaretesting, robotprosessautomatisering, aksepttesting og aksepttestdrevet utvikling.
Med enkle ord er det et Python-basert nøkkelorddrevet testautomatiseringsrammeverk.
Det gjør det mulig for testere å automatisere og vedlikeholde kompliserte prosessskript effektivt. Rammeverket kan brukes til å teste brukergrensesnitt og applikasjonsprogrammeringsgrensesnitt.
Det lar testingeniører bruke Selenium i tillegg til en rekke andre integrasjoner. Selenium er et industristandardverktøy for automatisering av brukeratferd og skripting av brukerbaserte nettleserinteraksjoner for ethvert nettsted.
Hva er aksepttesting?
Det er en måte å bestemme et systems kapasitet på. Målet med aksepttesting er å vurdere et systems evner i forhold til forretningsbehov.
Hva er robotprosessautomatisering?
RPA, eller robotprosessautomatisering, er en metode for å minimere menneskelig arbeidskraft ved å bruke programvare som inkorporerer maskinlæring og AI-evner. RPA brukes til å automatisere repeterende prosesser på høyt nivå.
Hva er aksept testdrevet utvikling?
Aksepttestdrevet utvikling, ofte kjent som ATDD, er en utviklingsteknikk som er avhengig av kommunikasjon mellom bedriftskunder, utviklere og testere. De samarbeider og gjennomfører aksepttesting før de distribuerer funksjonen.
Robotrammeverk – Høynivåarkitektur
Robot Framework er et rammeverk som er applikasjons- og teknologiagnostisk. Arkitekturen er veldig modulær, som vist på bildet nedenfor.
Testdataene presenteres i et enkelt, redigerbart tabellformat. Robot Framework analyserer data, gjennomfører testsaker og lager logger og rapporter når det startes.
Kjernerammeverket har ingen kunnskap om målet som testes, og bibliotekene administrerer all interaksjon med det. Biblioteker kan bruke testverktøy på lavere nivå som drivere eller direkte bruke applikasjonsgrensesnitt.
Egenskaper
- Det letter datadrevet testing ved å tillate testautomatisering for ulike datatyper.
- Den unngår å bruke betydelige mengder kode og bruker i stedet en atferdsdrevet teststrategi.
- Den kan fungere med biblioteker og funksjoner fra tredjeparter.
- Nøkkelord (forhåndsdefinert eller brukerdefinert) brukes i en tabellstil for å skrive testsaker.
- Brukere kan lage nøkkelord.
- Variabler er tillatt å bruke.
- Rammeverket bruker en nøkkelorddrevet metode, der skript er skrevet med små, lett forståelige termer (enten forhåndsdefinerte eller brukerdefinerte).
- Etter hvert bygg rapporterer,
- og logger opprettes.
- Den genererer grundige rapporter og logger over skriptets utførelsesstatus, noe som er spesielt nyttig i tilfelle skriptet mislykkes.
Opplæring i robotrammeverk
La oss dykke inn.
1. Installasjon av robotrammeverk
Pip-pakken er foreslått for installasjon av robotrammeverket i Python. For å installere rammeverket, kjør følgende kommando.
Du bør kunne se både tolk- og robotrammeversjonene etter en vellykket installasjon ved å bruke -versjon-alternativet.
2. Biblioteker
- Innebygd – Dette er et standardbibliotek som inneholder et sett med ofte brukte nøkkelord som automatisk importeres og er tilgjengelig til enhver tid.
- Samling – Det gir et sett med nøkkelord for å jobbe med Python-lister og ordbøker. Bibliotekets nøkkelord kan brukes til å endre og skape verdier fra lister og ordbøker.
- Dialoger – Et standardbibliotek for å stoppe utførelsen og motta tilbakemeldinger fra brukere. Avhengig av om testene kjører, er dialogene litt inkonsekvente.
- DateTime lar deg generere og endre dato- og klokkeslettinformasjon.
- Operativsystem – Det gjør det mulig for robotrammeverket å utføre en rekke operativsystemrelaterte oppgaver i systemet mens det kjører. Den kan blant annet utføre instruksjoner og produsere og modifisere data direkte.
- Prosess – Dette biblioteket brukes til å kjøre prosesser ved å bruke Python-undermoduler og den åpne klassen. Nøkkelordet kjøre prosess brukes til å vente på en kjørende prosess i systemet og kompilere den.
- XML er også et tekstbibliotek som brukes av robotrammeverket for å verifisere og endre XML-dokumenter.
- Strengen er en pakke for å manipulere og validere strenger.
- Telnet gjelder som lar deg samhandle gjennom telnet. Telnet-biblioteket lar deg koble til en telnet-server over en vanlig TCP/IP-tilkobling og utføre kommandoer.
3. Innebygd verktøy
I et robotrammeverk er det primært fire innebygde verktøy som brukes:
- Rebot – Verktøy for å lage logger og rapporter fra XML-utdata og slå sammen flere utdata på samme tid.
- Testdoc — Basert på testtilfeller lager Robot Framework HTML-dokumentasjon på høyt nivå.
- Libdoc – Nøkkelorddokumentasjonsgenerator for biblioteker og ressursfiler.
- Tidy – Robot Framework Tools for rengjøring og konvertering av datafiler til et annet format.
4. Testtilfeller
I stedet for automatiserte testcases, kan testcases i robotrammeverket skrives på grunnleggende engelsk. Følgende tester kan brukes til å klassifisere testscenariene.
- Arbeidsflyttester
- Tester på høyere nivå
- Datadrevne tester
Arbeidsflyttester
Robotrammeverkets testcases er ofte skrevet i tabellsyntaks. En testcasetabells første kolonne inneholder testnavnene, og testcasen begynner med hva som helst i kolonnen og slutter med neste testcasenavn eller tabellens slutt.
La oss ta en titt på et eksempel fra den virkelige verden for å forstå hvordan dette fungerer.
- En bruker kan opprette en konto og logge inn.
- Brukeren vil ikke kunne logge på hvis passordet er feil.
Tester på høyt nivå
Den andre kolonnen inneholder vanligvis et nøkkelordnavn, med unntak av innstillingsvariabler med nøkkelordskrevne verdier.
Robotrammeverkets testcases kan bygges ved å bruke bare nøkkelord på høyt nivå og ingen posisjonsparametere. For ytterligere å forstå testing på høyt nivå, vurder følgende eksempel.
Datadrevne tester
Datadrevet testing isolerer testdata i stedet for å simulere prosedyrer. I robotrammeverket definerer [mal]-innstillingen testtilfellet for en datadrevet test.
5. Stikkord
For å bygge testcases i robotrammeverket brukes nøkkelord fra to kilder.
- Nøkkelord for et bibliotek
- Nøkkelord for brukeren
Nøkkelord for et bibliotek
Standardbiblioteker definerer all terminologi på laveste nivå, som kan implementeres ved bruk av dataspråk som Python og Java.
Standard, eksterne og tilpassede biblioteker er blant testbibliotekene som er tilgjengelige med robotrammeverket. Kjernerammeverket inkluderer innebygde, skjermbilde, OS og andre standardbiblioteker.
Nøkkelord for brukeren
Evnen til å generere unike nøkkelord på høyt nivå fra eksisterende fraser er en av de viktigste egenskapene til robotdesignet. For ytterligere å forstå hvordan det fungerer, la oss se på et eksempel.
6. variabler
Variabler er en viktig del av hver testsak i et robotrammeverk. En variabel er en utmerket tilnærming til å spesifisere data i et testtilfelle som er gjenstand for endring eller variabilitet.
La oss se på hvordan du definerer variabler i et testtilfelle.
Spesifisere variabler
Bortsett fra brukerdefinerte variabler, har robotrammeverket innebygde variabler som $TEMPDIR og $/, som vi brukte i forrige eksempel.
Bruk av variabler
Variabler kan brukes hvor som helst i testsaken.
Imidlertid brukes de oftest som søkeordargumenter. Tenk på følgende eksempel for å illustrere hva jeg mener.
7. Organisering av testcases
Testcasefiler brukes til å bygge robottestsaker, men de kan også grupperes i kataloger for å lage et testsuitehierarki. En testpakke er en gruppering av testtilfeller. En testpakke består av alle filer som inneholder testcases.
Ved hjelp av kataloger kan testsakene struktureres i et hierarki; alle disse katalogene gir testsuiter på høyt nivå med navn avledet fra katalognavnene.
Bruke oppsett og nedbrytninger
Innstillingstabellens alternativer for "Testoppsett" og "Testnedbrytning" kan brukes til å utføre et spesifikt nøkkelord i en test før eller etter at den er fullført. Du kan også bruke "Suite Setup" og "Suite Teardown" for å kjøre nøkkelord før eller etter en testsuite.
Du kan opprette egendefinerte [Oppsett] og [Teardown] i en testcase, som ligner på [Mal]. Vurder følgende scenario for bedre å forstå dette.
Bruke Tags
Robotrammeverket lar tagger brukes for å gi gratis metadata for å teste tilfeller. "Force Tags" og "Default Tags" kan brukes til å sette tagger i en fil. [Tags], som [Template], kan brukes til å tilordne tagger til en enkelt testsak. La oss se på et eksempel for å se hvordan vi bruker tagger.
Rapporten vil inneholde tagger med testtilfeller knyttet til dem, samt statistikk basert på taggene, etter utførelse.
Pros
- Det er enkelt å sette opp Robot Framework.
- Det er basert på bruk av søkeord.
- Den lar deg bruke Agerkin.
- Det fungerer med begge mobil- og nettbaserte apper.
- Robotrammeverkets grunnleggende er lett å forstå.
- Den bruker en lavkode-tilnærming.
- Windows, Mac OS X, Unix og Linux støttes alle.
- Python, IronPython og PyPy er alle støttede programmeringsspråk.
- Det fungerer med alle store nettlesere.
- Robot Framework er et gratis-å-bruke, åpen kildekode-automatiseringsverktøy.
Ulemper
- Parallell testkjøring støttes ikke av Robot Framework.
- Robotrammeverket er vanskelig å holde tritt med.
- HTML-rapporter i Robot Framework er vanskelige å endre.
- Det kan være vanskelig å feilsøke noen Robot Framework-problemer.
- Innrykk håndheves strengt i Robot Framework.
konklusjonen
Robot-plattformen er et gratis og åpen kildekode aksepttesting og aksept testdrevet utviklingsrammeverk.
Robotrammeverkets testcases er bygget på nøkkelord uttrykt i en tabellstil, noe som gjør dem enkle å forstå og gir nøyaktig informasjon om testcasens betydning.
Det er veldig praktisk og enkelt å bruke.
Noen av dere har brukt det før, så hvis du har tester satt opp og Android / iOS-appen klar til bruk, prøv den.
Du vil bli overrasket over hvor bra ting går og hvor snart aksepttesting kan fullføres.
Legg igjen en kommentar