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

