Test automatiseringsrammer - Ting, du skal vide!

Indholdsfortegnelse:

Anonim

I denne vejledning lærer du

  • Hvad er en ramme?
  • Hvad er en TEST Automation Framework?
  • Typer af automatiseringsrammer
  • 1) Lineær scripting - Optag & afspilning
  • 2) Testbibliotekets arkitekturramme.
  • 3) Den datadrevne testramme.
  • 4) Søgeordsdrevet eller tabelbaseret testramme.
  • 5) Hybrid Test Automation Framework.

Hvad er en ramme?

I stedet for at give en boglig definition af en ramme, lad os overveje et eksempel.

Jeg er sikker på, at du har deltaget i et seminar / foredrag / konference, hvor deltagerne blev bedt om at overholde følgende retningslinjer -

  • Deltagerne skal indtage deres plads 5 minutter før starten af ​​en forelæsning
  • Medbring en notesbog og en pen til notering.
  • Læs abstraktet, så du får en idé om, hvad præsentationen vil handle om.
  • Mobiltelefoner skal indstilles til lydløs
  • Brug udgangsportene i den modsatte ende af højttaleren, hvis du har brug for at rejse midt i forelæsningen.
  • Spørgsmål vil blive taget i slutningen af ​​sessionen

Tror du, du kan afholde et seminar UDEN at overholde disse retningslinjer ????

Svaret er et stort JA! Bestemt kan du afholde et seminar / forelæsning / konference / demonstration uden ovenstående retningslinjer (faktisk følger nogle af os ikke dem, selvom der er lagt ... :-)

Men hvis retningslinjerne følges, vil det resultere i et gavnligt resultat som reduceret publikums distraktion under forelæsningen og øget deltagernes fastholdelse og forståelse af emnet.

Baseret på ovenstående kan en ramme defineres som et sæt retningslinjer, som når de følges giver gavnlige resultater.

Hvad er en TEST Automation Framework?

Et sæt retningslinjer som kodningsstandarder, håndtering af testdata, behandling af objekter, osv., Som når de følges under automatiseringsscripting, giver gavnlige resultater som øget genbrug af kode, højere bærbarhed, reducerede scriptvedligeholdelsesomkostninger osv. Husk, det er bare retningslinjer og ikke regler; de er ikke obligatoriske, og du kan stadig script uden at følge retningslinjerne. Men du vil gå glip af fordelene ved at have en ramme.

Typer af automatiseringsrammer

1) Lineær scripting
2) Testbibliotekets arkitekturramme.
3) Den datadrevne testramme.
4) Søgeordsdrevet eller tabelbaseret testramme.
5) Hybrid Test Automation Framework.

Lad os se nærmere på dem -

1) Lineær scripting - Optag & afspilning

Det er den enkleste af alle rammer og også kendt som "Record & Playback" . I denne ramme registrerer Tester manuelt hvert trin (Navigation og brugerindgange), indsætter kontrolpunkter (valideringstrin) i første runde. Han afspiller derefter det indspillede manuskript i de efterfølgende runder.

Eks .: Overvej at logge ind på Flight Reservation Application og kontrollere, om applikationen er indlæst ved vellykket login. Her registrerer testeren simpelthen trinnene og tilføjer valideringstrin.

SystemUtil.Run "flight4a.exe", "", "", "open"Dialog ("Login"). WinEdit ("Agentnavn:"). Indstil "Guru99"Dialog ("Login"). WinEdit ("Password:"). Indstil "Mercury"Dialog ("Login"). WinButton ("OK") Klik'Kontroller, at vinduet med reservationsreservation er indlæst efter vellykket loginVindue ("Flight Reservation"). Check CheckPoint ("Flight Reservation")

Fordele

  • Hurtigste måde at generere et script på
  • Automatiseringsekspertise kræves ikke
  • Den nemmeste måde at lære funktionerne i testværktøjet på

Ulemper

  • Lille genbrug af scripts
  • Testdata er hårdkodet i scriptet
  • Vedligeholdelses mareridt

2) Testbibliotekets arkitekturramme.

Det kaldes også "Structured Scripting" eller "Functional Decomposition".

I denne ramme registreres test-scripts oprindeligt efter "Record & Playback" -metoden. Senere identificeres almindelige opgaver inde i scriptsne og grupperes i funktioner. Disse funktioner kaldes af hovedtest script kaldet Driver på forskellige måder for at oprette test cases.

Eks: Ved hjælp af det samme eksempel som ovenfor vil funktionen til at logge ind på Flight Reservation se ud.

Funktion Login ()SystemUtil.Run "flight4a.exe", "", "", "open"Dialog ("Login"). WinEdit ("Agentnavn:"). Indstil "Guru99"Dialog ("Login"). WinEdit ("Password:"). Indstil "Mercury"Dialog ("Login"). WinButton ("OK") KlikAfslut funktion

Nu kalder du denne funktion i hovedskriptet som følger

Log ind ()---------------------------Andre funktionsopkald / testtrin.---------------------------

Fordele

  • Højere niveau for genbrug af kode opnås i Structured Scripting sammenlignet med "Record & Playback"
  • Automatiseringsskriptene er billigere at udvikle på grund af højere genbrug af kode
  • Lettere vedligeholdelse af script

Ulemper

  • Teknisk ekspertise er nødvendig for at skrive scripts ved hjælp af Test Library Framework.
  • Der kræves mere tid til at planlægge og forberede testskripter.
  • Testdata er hårdt kodet i scripts

3) Den datadrevne testramme.

I denne ramme, mens testkasselogik findes i testskripter, adskilles testdataene og opbevares uden for testskripterne. Testdata læses fra de eksterne filer (Excel-filer, tekstfiler, CSV-filer, ODBC-kilder, DAO-objekter, ADO-objekter) og indlæses i variablerne inde i testskriptet. Variabler bruges både til inputværdier og til verifikationsværdier. Selve testskripter udarbejdes enten ved hjælp af Linear Scripting eller Test Library Framework.

Eks: Udvikling af Flight Reservation Login-script ved hjælp af denne metode vil involvere to trin.

Trin 1) Opret en test - datafil, der kan være Excel, CSV eller en hvilken som helst anden databasekilde.

Agentnavn

Adgangskode

Jimmy

Kviksølv

Tina

KVIKSYD

Regning

MerCURY

Trin 2) Udvikl testscript, og henvis til din testdatakilde.

SystemUtil.Run "flight4a.exe", "", "", "open"Dialog ("Login"). WinEdit ("Agentnavn:"). Indstil datatabel ("Agentnavn", dtGlobalSheet)Dialog ("Login"). WinEdit ("Password:"). Indstil DataTable ("Password", dtGlobalSheet)Dialog ("Login"). WinButton ("OK") Klik'Kontroller, at vinduet med flyreservation er indlæstVindue ("Flight Reservation"). Check CheckPoint ("Flight Reservation")** Bemærk "dtGlobalSheet" er standard excel-ark leveret af QTP.

Fordele

  • Ændringer i testskripterne påvirker ikke testdataene
  • Testcases kan udføres med flere datasæt
  • En række testscenarier kan udføres ved blot at variere testdataene i den eksterne datafil

Ulemper

  • Der kræves mere tid til at planlægge og forberede både testscripts og testdata

4) Søgeordsdrevet eller tabelbaseret testramme.

Den nøgleordsdrevne eller tabelbaserede ramme kræver udvikling af datatabeller og nøgleord uafhængigt af testautomatiseringsværktøjet, der bruges til at udføre dem. Test kan designes med eller uden applikationen. I en nøgleordsdrevet test er funktionaliteten af ​​applikationen under testen dokumenteret i en tabel såvel som i trinvise instruktioner for hver test.

Der er 3 grundlæggende komponenter i et Keyword Driven Framework nemlig. Nøgleord, applikationskort, komponentfunktion.

Hvad er et nøgleord?

Keyword er en handling, der kan udføres på en GUI-komponent. Eks. For GUI-komponenttekstboks er nogle nøgleord (handling) InputText, VerifyValue, VerifyProperty og så videre.

Hvad er applikationskortet?

Et applikationskort indeholder navngivne referencer til GUI-komponenter. Applikationskort er intet andet end " Object Repositry "

Hvad er komponentfunktion?

Komponentfunktioner er de funktioner, der aktivt manipulerer eller forhører GUI-komponenten. Et eksempel på en funktion er at klikke på web-knappen med al fejlhåndtering, indtaste data i en webredigering med al fejlhåndtering. Komponentfunktioner kan være applikationsafhængige eller uafhængige.

Eks : For at forstå Keyword View kan vi tage det samme eksempel. Det indeholder to trin

Trin 1 : Oprettelse af datatabel (forskellig fra testdatatabel oprettet i datadrevet ramme). Denne datatabel indeholder handling, der skal udføres på GUI-objekter og eventuelle eventuelle argumenter. Hver række repræsenterer et testtrin.

Objekt

(Ansøgningskort)

Handling

(Nøgleord)

Argument

WinEdit (agentnavn)
Sæt
Guru99
WinEdit (adgangskode)
Sæt
Kviksølv
WinButton (OK)
Klik på
Vindue (flyreservation)
Verificere
Eksisterer

Trin 2 : Skrivning af kode i form af komponentfunktioner.

Når du har oprettet din (e) datatabel (r), skal du blot skrive et program eller et sæt scripts, der læser i hvert trin, udfører trinnet baseret på nøgleordet indeholdt i handlingsfeltet, udfører fejlkontrol og logger relevant information. Dette program eller sæt scripts vil ligne pseudokoden nedenfor:

Funktion hoved (){Call ConnectTable (navn på tabellen) {// Calling-funktion til at oprette forbindelse til tabellen.while (Call TableParser ()! = -1) // Calling-funktion til parsing og udpakning af værdier fra tabellen.{Videregiv værdier til passende KOMPONENT-funktioner. Ligesom Set (Objektnavn, Argument) ex.Set (Agentnavn, Guru99).}}Call CloseConnection () // Funktion til lukning af forbindelse efter al operation er udført.} // Slut på hoved

Det er alt sammen med Keyword Driven Framework.

Fordelen ved Keyword Driven Framework er, at Keywords kan genbruges. For at forstå dette skal du overveje, at du vil bekræfte login-operation for et websted, siger YAHOO MAIL. Tabellen vil se sådan ud -

Objekt (ANSØGNINGSKORT) Handling (KEYWORD) Argument
WebEdit (brugernavn) Sæt Denne e-mail-adresse er beskyttet mod spambots. Du skal aktivere JavaScript for at kunne se den.
WebEdit (adgangskode) Sæt xxxxx
WebButton (OK) Klik på
Vindue (Yahoo Mail) Verificere Belastninger

Hvis du i dette tilfælde observerer nøgleordssættet, klik, bekræft forbliver det samme, for hvilket tilsvarende komponentfunktioner allerede er udviklet. Alt du skal gøre er at ændre Application Mapping (Object Repository) fra tidligere Flight Reservation til Yahoo Mail med en ændring i argumentværdier og det samme script fungerer!

Fordele

  • Giver høj kode genbrugelighed
  • Testværktøj uafhængig
  • Uafhængigt af applikation under test fungerer det samme script for AUT (med nogle begrænsninger)
  • Test kan designes med eller uden AUT

Ulemper

  • Den oprindelige investering er ret høj, fordelene ved dette kan kun realiseres, hvis applikationen er betydeligt stor, og testskripterne skal opretholdes i et par år.
  • Der kræves høj automatiseringsekspertise til at oprette Keyword Driven Framework.

BEMÆRK: Selvom Micro Focus UFT annoncerer sig som KeyWord Driven Framework, kan du ikke opnå komplet testværktøj og applikationsafhængighed ved hjælp af HP UFT.

5) Hybrid Test Automation Framework.

Som navnet antyder, er denne ramme kombinationen af ​​en eller flere rammer, der er diskuteret ovenfor, og trækker fra deres styrker og forsøger at afbøde deres svagheder. Denne hybrid testautomatiseringsramme er, hvad de fleste rammer udvikler sig til over tid og flere projekter. Maksimal industri bruger Keyword Framework i en kombination af funktionsnedbrydningsmetode.

PS: Andre rammer, der er værd at nævne, er

Test Modularity Framework

I denne ramme er en fælles opgave i test script grupperet som moduler.

Eks : Brug af handlinger i QTP-brug kan oprette en Modualr-scripts

Prøve script til login

SystemUtil.Run "flight4a.exe", "", "", "open"Dialog ("Login"). WinEdit ("Agentnavn:"). Indstil "Guru99"Dialog ("Login"). WinEdit ("Password:"). Indstil "Mercury"Dialog ("Login"). WinButton ("OK") Klik'End på scriptet

Nu kan du kalde denne handling i hovedskriptet som følger -

RunAction ("Login [Argument]", oneIteration)

Test af forretningsprocesser (BPT)

Disse rammer opdeler store forretningsprocesser i komponenter, der kan genbruges flere gange i de samme eller forskellige testskripter. For eksempel opdeles forretningsprocessen med at bestille en flyvning i komponenter som Login, Find fly, Booking, betaling og logout, som kan genbruges i den samme forretningsproces eller forskellige processer. BPT letter også tættere koordinering mellem SMV'er og automatiseringsingeniører.