Innehållsförteckning[Dölj][Visa]
Varje webbutvecklingsteam genomför en uppsättning tester på sina produkter, men webblösningen som ges senare har brister.
Även med de finaste manuella testerna smyger sig oundvikligen defekter in och dyker upp igen, trots ansträngningar från QA-teamet att fånga dem innan den första releasen.
När det gäller att öka effektiviteten och omfattningen av din mjukvarutestning är automatiserad webbtestning ditt bästa val.
För onlinetestning, Python programmeringsspråk erbjuder ett robotramverk som kan utnyttja externa bibliotek som selen.
I det här inlägget går vi igenom testfall och andra termer kopplade till Python-robotramverket.
Vad är ett robotramverk?
Robotramverk är ett flexibelt generiskt automationsramverk med öppen källkod skrivet i Python som används för automatiserad mjukvarutestning, robotprocessautomation, acceptanstestning och acceptanstestdriven utveckling.
Med enkla ord är det ett Python-baserat sökordsdrivet ramverk för testautomatisering.
Det gör det möjligt för testare att automatisera och underhålla komplicerade processskript effektivt. Ramverket kan användas för att testa användargränssnitt och applikationsprogrammeringsgränssnitt.
Det tillåter testingenjörer att använda Selen utöver många andra integrationer. Selenium är ett branschstandardverktyg för att automatisera användarbeteende och skripta användarbaserade webbläsarinteraktioner för vilken webbplats som helst.
Vad är acceptanstestning?
Det är ett sätt att bestämma ett systems kapacitet. Målet med acceptanstestning är att bedöma ett systems kapacitet i förhållande till verksamhetens behov.
Vad är robotprocessautomation?
RPA, eller robotprocessautomation, är en metod för att minimera mänskligt arbete genom att använda programvara som innehåller maskininlärning och AI-kapacitet. RPA används för att automatisera repetitiva processer på hög nivå.
Vad är acceptanstestdriven utveckling?
Acceptanstestdriven utveckling, ofta känd som ATDD, är en utvecklingsteknik som bygger på kommunikation mellan företagskunder, utvecklare och testare. De samarbetar och genomför acceptanstestning innan de distribuerar funktionen.
Robotramverk – Högnivåarkitektur
Robot Framework är ett ramverk som är applikations- och teknikagnostiskt. Dess arkitektur är mycket modulär, som ses på bilden nedan.
Testdata presenteras i ett enkelt, redigerbart tabellformat. Robot Framework analyserar data, genomför testfall och skapar loggar och rapporter när det startas.
Kärnramverket har ingen kunskap om målet som testas, och biblioteken hanterar all interaktion med det. Bibliotek kan utnyttja testverktyg på lägre nivå som drivrutiner eller direkt använda applikationsgränssnitt.
Funktioner
- Det underlättar datadrivna tester genom att möjliggöra testautomatisering för olika datatyper.
- Den undviker att använda betydande mängder kod och använder istället en beteendedriven teststrategi.
- Det kan fungera med bibliotek och funktioner från tredje part.
- Nyckelord (fördefinierade eller användardefinierade) används i en tabellform för att skriva testfall.
- Användare kan skapa nyckelord.
- Variabler är tillåtna att användas.
- Ramverket använder en nyckelordsdriven metod, där skript skrivs med små, lättförståeliga termer (antingen fördefinierade eller användardefinierade).
- Efter varje konstruktion, rapporter,
- och loggar skapas.
- Det genererar noggranna rapporter och loggar över skriptets körstatus, vilket är särskilt användbart i händelse av att skriptet misslyckas.
Handledning för robotramverk
Låt oss dyka in.
1. Installation av robotram
Pip-paketet föreslås för installation av robotramverket i Python. För att installera ramverket, kör följande kommando.
Du bör kunna se både versionen av tolk- och robotramverket efter en lyckad installation med alternativet -version.
2. Bibliotek
- Inbyggt – Detta är ett standardbibliotek som innehåller en uppsättning vanliga nyckelord som importeras automatiskt och är tillgängliga hela tiden.
- Samling – Det ger en uppsättning nyckelord för att arbeta med Python-listor och ordböcker. Bibliotekets nyckelord kan användas för att förändra och skapa värden från listor och ordböcker.
- Dialoger – Ett standardbibliotek för att stoppa exekveringen och ta emot feedback från användare. Beroende på om testerna körs är dialogerna lite inkonsekventa.
- DateTime låter dig generera och ändra datum- och tidsinformation.
- Operativsystem – Det gör det möjligt för robotens ramverk att utföra en mängd olika operativsystemrelaterade uppgifter i systemet medan det körs. Den kan bland annat utföra instruktioner och producera och modifiera data direkt.
- Process – Det här biblioteket används för att köra processer med Python-undermoduler och den öppna klassen. Nyckelordet kör process används för att vänta på en pågående process i systemet och kompilera den.
- XML är också ett textbibliotek som används av robotramverket för att verifiera och modifiera XML-dokument.
- Strängen är ett paket för att manipulera och validera strängar.
- Telnet gäller som låter dig interagera via telnet. Telnet-biblioteket låter dig ansluta till en telnet-server över en vanlig TCP/IP-anslutning och utföra kommandon.
3. Inbyggda verktyg
I ett robotramverk finns det i första hand fyra inbyggda verktyg som används:
- Rebot – Verktyg för att skapa loggar och rapporter från XML-utdata och slå samman flera utdata samtidigt.
- Testdoc — Baserat på testfall skapar Robot Framework HTML-dokumentation på hög nivå.
- Libdoc – Generator för nyckelordsdokumentation för bibliotek och resursfiler.
- Tidy – Robot Framework Tools för att rengöra och konvertera datafiler till ett annat format.
4. Testfall
Istället för automatiserade testfall kan testfall i robotramverket skrivas på grundläggande engelska. Följande tester kan användas för att klassificera testscenarierna.
- Arbetsflödestester
- Tester på högre nivå
- Datadrivna tester
Arbetsflödestester
Robotramverkets testfall skrivs ofta i tabellsyntax. En testfallstabells första kolumn innehåller testnamnen, och testfallet börjar med vad som helst i kolumnen och slutar med nästa testfallsnamn eller tabellens slut.
Låt oss ta en titt på ett verkligt exempel för att förstå hur detta fungerar.
- En användare kan skapa ett konto och logga in.
- Användaren kommer inte att kunna logga in om lösenordet är felaktigt.
Tester på hög nivå
Den andra kolumnen innehåller vanligtvis ett nyckelordsnamn, med undantag för att ställa in variabler med nyckelordsskrivna värden.
Robotramverkets testfall kan byggas med bara nyckelord på hög nivå och inga positionsparametrar. För att ytterligare förstå tester på hög nivå, överväg följande exempel.
Datadrivna tester
Datadriven testning isolerar testdata snarare än att simulera procedurer. I robotramverket definierar [mall]-inställningen testfallet för ett datadrivet test.
5. Nyckelord
För att bygga testfall i robotramverket används nyckelord från två källor.
- Nyckelord för ett bibliotek
- Nyckelord för användaren
Nyckelord för ett bibliotek
Standardbibliotek definierar all terminologi på lägsta nivå, som kan implementeras med hjälp av datorspråk som Python och Java.
Standardbibliotek, externa och anpassade bibliotek är bland testbiblioteken som är tillgängliga med robotramverket. Kärnramverket inkluderar inbyggda, skärmdumpar, OS och andra standardbibliotek.
Nyckelord för användaren
Förmågan att generera unika nyckelord på hög nivå från befintliga fraser är en av de viktigaste egenskaperna hos robotdesignen. För att ytterligare förstå hur det fungerar, låt oss titta på ett exempel.
6. variabler
Variabler är en viktig del av varje testfall i ett robotramverk. En variabel är ett utmärkt tillvägagångssätt för att specificera data i ett testfall som är föremål för förändring eller variabilitet.
Låt oss ta en titt på hur man definierar variabler i ett testfall.
Specificering av variabler
Bortsett från användardefinierade variabler har robotramverket inbyggda variabler som $TEMPDIR och $/, som vi använde i föregående exempel.
Att använda sig av variabler
Variabler kan användas var som helst i testfallet.
De används dock oftast som sökordsargument. Betrakta följande exempel för att illustrera vad jag menar.
7. Organisera testfall
Testfallsfiler används för att bygga robottestfall, men de kan också grupperas i kataloger för att skapa en testsvitshierarki. En testsvit är en gruppering av testfall. En testsvit består av alla filer som innehåller testfall.
Med hjälp av kataloger kan testfallen struktureras i en hierarki; alla dessa kataloger tillhandahåller testsviter på hög nivå med namn som härrör från katalognamnen.
Använda Setups och Teardowns
Inställningstabellens "Test Setup" och "Test Teardown" alternativ kan användas för att köra ett specifikt nyckelord i ett test innan eller efter det är klart. Du kan också använda "Suite Setup" och "Suite Teardown" för att köra nyckelord före eller efter en testsvit.
Du kan skapa anpassade [Setup] och [Teardown] i ett testfall, liknande [Mall]. Överväg följande scenario för att bättre förstå detta.
Använda taggar
Robotramverket tillåter att taggar används för att tillhandahålla gratis metadata för testfall. "Force Tags" och "Default Tags" kan användas för att sätta taggar i en fil. [Taggar], som [Mall], kan användas för att tilldela taggar till ett enda testfall. Låt oss titta på ett exempel för att se hur vi använder taggar.
Rapporten kommer att innehålla taggar med testfall kopplade till dem, samt statistik baserad på taggarna, efter exekvering.
Fördelar
- Det är enkelt att ställa in Robot Framework.
- Det är baserat på att använda nyckelord.
- Det gör att du kan använda gurka.
- Det fungerar med båda mobila och webbaserade appar.
- Grunderna i Robot Framework är lätta att förstå.
- Den använder en lågkodsmetod.
- Windows, Mac OS X, Unix och Linux stöds alla.
- Python, IronPython och PyPy är alla programmeringsspråk som stöds.
- Det fungerar med alla större webbläsare.
- Robot Framework är ett automationsverktyg med öppen källkod som är gratis att använda.
Nackdelar
- Parallell testkörning stöds inte av Robot Framework.
- Robot Framework är svårt att hänga med.
- HTML-rapporter i Robot Framework är svåra att ändra.
- Det kan vara svårt att felsöka vissa Robot Framework-problem.
- Indragning tillämpas strikt i Robot Framework.
Slutsats
Robotplattformen är ett gratis och öppen källkod för acceptanstestning och acceptanstestdrivet utvecklingsramverk.
Robotramverkets testfall bygger på nyckelord uttryckta i tabellform, vilket gör dem lätta att förstå och ger korrekt information om testfallets innebörd.
Det är verkligen bekvämt och enkelt att använda.
Några av er har använt det förut, så om du har dina tester inställda och din Android / iOS-app redo att köra, prova det.
Du kommer att bli förvånad över hur bra det går och hur snart acceptanstestning kan slutföras.
Kommentera uppropet