Coded UI Test Automation Framework Tutorial
โก Smart opsummering
Coded UI Test (CUIT) er en automatiseret testfunktion i Visual Studio, der driver en applikation via dens brugergrรฆnseflade. Her lรฆrer du, hvad CUIT er, dens funktioner, understรธttede teknologier, hvordan man opretter tests, og bedste praksis.

En typisk softwareautomatisering Test krรฆver automatiseringsvรฆrktรธjer som Selenium og QTP. Coded UI ligner disse vรฆrktรธjer og kan vรฆre sรฆrligt nyttig 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?
Coded UI-test (CUIT) er en automatiseret test, der driver applikationer via dens brugergrรฆnseflade (UI). Deraf 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
Coded UI-testfunktioner
Coded 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
Coded 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.
Coded 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 fremragende funktion i Coded UI. Den 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
- Coded 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 Coded UI-tests (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 Coded 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 Metoder Egenskaber | 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 Coded UI-tutorial, vi lรฆrer hvordan man udfรธrer Coded UI-automatiseringstest.
Sรฅdan udfรธres Coded UI-test
Coded UI har to forskellige mรฅder at udfรธre en test for din applikation pรฅ.
- Coded UI-optagelse og -afspilning eller
- Coded UI Hรฅndkodning
Du skal fรธlge fรธlgende trin for at udfรธre Coded UI-testning,
- Opret en 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 praksis for Coded UI-test (CUIT)
Her er nogle bedste fremgangsmรฅder for en Coded UI-testautomatiseringsramme:
- Brug Coded UI-automatiseringstestbygger 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.
- For at oprette pรฅstande, brug CodedUI test builder. Den tilfรธjer automatisk en assertion-metode 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 Coded UI-test vs. Selenium Vs QTP
Nedenfor er sammenligningstabellen for Coded UI 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 Coded UI-test vs. Selenium Vs QTP

