Kodet UI Test Automation Framework Tutorial
En typisk softwareautomatisering Test kræver automatiseringsværktøjer som Selenium og QTP. Kodet brugergrænseflade ligner disse værktøjer og kan være særligt nyttige til funktionelle tests.
Coded UI Test (CUIT) bruger Visual Studio IDE til at skrive scripts, da optagelsen kan udføres vha. Visual Studio.
Hvad er Coded UI Test?
Kodet UI-test (CUIT) er en automatiseret test, der kører applikationer gennem dens brugergrænseflade (UI). Derfor navnet Coded UI Test (CUIT). Denne test involverer funktionstest af UI-kontrollerne. Den kontrollerer funktionaliteten af hele applikationen, inklusive brugergrænsefladen. Det bruges også til at automatisere en eksisterende manuel test.

UI test Architecture
Kodede UI-testfunktioner
Kodede UI-funktioner inkluderer
- Funktionstest
- Generer kode i VB/C#
- Integreret med ALM story
- Byg, implementer og test i laboratoriet eller som en del af en build
- Lokale, fjernkørsel, dataindsamling
- Rig udvidelsesmuligheder
- Hensigtsbevidst optagelse og modstandsdygtig afspilning
Kodet UI-test (CUIT) Understøttede teknologier
Med kodet UI kan en applikation, der har UI (User Interface) nemt testes. Applikationen kan enten være vinduesbaseret eller webbaseret.
Kodet UI understøtter teknologier som
- Vinduesbaserede desktop-applikationer
- Webtjenester (SOAP, ASPX osv.)
- Vinduestelefon applikationer
- WPF (Windows Præsentation Foundation)
- Webapplikationer (HTML, Silverlight, HTML5)
Hvorfor bruge kodet brugergrænseflade til testautomatisering
Grunden til, at kodet UI til testautomatisering foretrækkes
- Udviklere og softwaretestere kan samarbejde effektivt med de samme værktøjer/sprog.
- Det understøtter både web og Windows projekter.
- Elementidentifikationsmekanismen er en fantastisk funktion i Coded UI. Det understøtter også synkronisering
- Playback Engine understøtter funktioner såsom 'WaitForControlExist', 'WaitForReadyLevel' osv.
- Ved hjælp af 'Test Agents' kan automatiseringstest køres på fjernmaskiner
- Automatiseringsteams kan udvikle sofistikerede tests ved hjælp af kodet brugergrænseflade med en lagdelt ramme
- Softwaretestere kan fange undtagelser og registrere resultatet effektivt ved at bruge log4net.dll
- Kodet UI-værktøj understøtter beskrivende programmering. Det giver softwaretestere mulighed for at automatisere scenarier baseret på objektegenskaber
- Det understøtter AJAX-kontroller.
Sådan opretter du kodede brugergrænsefladetest (CUIT)
For at oprette kodede UI-tests kan du gøre det på følgende måder.
- Generering fra en eksisterende handlingsoptagelse (konvertering fra manuel testoptagelse)
- Oprettelse af en ny kodet UI-test fra bunden
- Skrive kode fra bunden
Indholdet af en kodet UI-test
Når du opretter en kodet UI-test, opretter den kodede UI-testbygger et kort. Dette inkluderer UI under test, testmetoder, parametre, påstande osv. For hver test opretter den også en klassefil.
File (Felt) | Indhold | Redigerbar |
---|---|---|
UIMap.Designer.cs | Erklæringsafsnit UIMap Class Methods Properties | Ingen |
UIMap.cs | UIMap-klasse (delvis) | Ja |
CodedUITest1.cs | CodeUITest1 klasse Metodeegenskaber | Ja |
UIMap.uitest | XML-kortet over brugergrænsefladen til testen. Det redigeres kun gennem UI Map editor | Ingen |
- UIMap.Designer.cs : Designeren indeholder kodevisningen af UIMap. Det genereres, når en tester registrerer en UI-interaktion, eller når nogle objekter tilføjes manuelt til UIMap.
- UIMap.cs: Enhver ændring eller tilpasning af UIMap'et gemmes i denne fil. Til at begynde med vil denne fil være tom og kan udfyldes senere. Hvis der foretages ændringer direkte i UIMap.designer.cs-filen, skal du sørge for, at den ikke er registreret, ellers vil alle ændringer gå tabt.
- CodedUITest1.cs: Denne fil indeholder kodet UI-testklasse, testmetoder, påstandsindkaldelse og metodekald. Alle påstande og metoder er som standard påberåbt fra denne fil.
- UIMap.uitest: Det er en XML-repræsentation af UIMap-klassen. Det inkluderer vinduer, kontroller, egenskaber, metoder, handlinger og påstande. Det redigeres kun gennem UI Map editor
Næste i denne kodede UI-tutorial lærer vi, hvordan du udfører en kodet UI-automatiseringstest.
Sådan udføres kodet UI-test
Kodet brugergrænseflade har to forskellige måder at udføre en test for din applikation på.
- Kodet UI optagelse og afspilning eller
- Kodet UI Håndkodning
Du skal følge følgende trin for at udføre kodet UI-test,
- Opret et CodedUI-testprojekt
- Tilføj en kodet UI-testfil
- Optag en sekvens af handlinger
- Bekræft værdierne i UI-felter såsom tekstbokse
- Se den genererede testkode
- Tilføj flere handlinger og påstande
- Rediger detaljerne om testaktiviteterne og påstandene
- Kør testen
Bedste Practices for Coded UI Test (CUIT)
Her er nogle bedste praksisser for en kodet UI-testautomatiseringsramme:
- Brug Coded UI automation Test Builder, når det er muligt
- Prøv ikke at ændre filen UIMap.designer.cs direkte. Ellers vil de ændringer, du har foretaget i filen, blive overskrevet
- Opret din test som en sekvens af registrerede metoder
- Hver optaget metode skal virke på en enkelt side, formular eller dialogboks. Opret også en ny testmetode for hver ny formular, side eller dialogboks
- Når du opretter en metode, skal du bruge et meningsfuldt metodenavn i stedet for standardnavnet. Et meningsfuldt navn hjælper med at identificere formålet med metoden
- Hvis det er muligt, begræns hver optaget metode til mindre end 10 handlinger. Denne tilgang gør det lettere at erstatte en metode, hvis brugergrænsefladen ændres.
- Brug CodedUI testbuilder for at skabe påstand. Det tilføjer automatisk en påstandsmetode til UIMap.Designer.cs-filen.
- Genoptag testmetoderne/påstandsmetoderne, hvis brugergrænsefladen ændrer eller genregistrerer de berørte sektioner af en eksisterende testmetode.
- Hvis du koder direkte med API'en, skal du bruge metoderne og egenskaberne i de klasser, der er oprettet i filen UIMap.Designer.cs. Disse klasser vil gøre dit arbejde mere pålideligt og lettere, og vil hjælpe dig til at være mere produktiv.
Sammenligning af kodet UI-test vs Selenium Mod QTP
Nedenfor er sammenligningstabellen for kodet brugergrænseflade vs Selenium Vs QTP:
- Selenium understøtter ikke nogen WPF samt Windows applikationer
- Visual Studio CodedUI understøtter Window Store-applikationstestning såvel som Window Phone-applikationstest. Ingen andre værktøjer understøtter dette.
- Test komplet understøtter Window Application, men kræver et plugin for at blive installeret.
Sammenligning af kodet UI-test vs Selenium Mod QTP
Sammendrag:
- Automatiserede test, der driver din applikation gennem dens brugergrænseflade (UI) er kendt som CodedUI-tests (CUIT'er).
- Kodet UI-testautomatiseringsramme understøtter teknologier som webtjenester, vinduestelefonapplikationer, webapplikationer osv.
- Kodet UI-test giver udviklere og Software testere at samarbejde effektivt med de samme værktøjer/sprog
- Indhold eller en fil oprettet under brug af CodedUI inkluderer
- UIMap.Designer.cs
- UIMap.cs
- CodedUITest1.cs
- UIMap.uitest