Coded Veiledning for rammeverk for automatisering av UI-testing

⚡ Smart oppsummering

Coded UI Test (CUIT) er en automatisert testfunksjon i Visual Studio som driver et program gjennom brukergrensesnittet. Her lærer du hva CUIT er, funksjonene, støttede teknologier, hvordan du lager tester og beste praksis.

  • 🖥️ Hva det er: Coded UI Testkjører et program gjennom brukergrensesnittet (UI).
  • 🎬 Innspilling: Registrer UI-handlinger i Visual Studio for å generere testkode.
  • 🧰 teknologier: CUIT støtter web, WPF, Windows Skjemaer og andre brukergrensesnittteknologier.
  • 🆚 Vs Selenium/QTP: I likhet med Selenium og QTP, CUIT automatiserer funksjonell UI-testing.
  • 🤖 AI-hjelp: AI-verktøy som GitHub Copilot hjelper med å generere og vedlikeholde UI-testkode.

Coded UI-test (CUIT)

En typisk programvareautomatisering Testing krever automatiseringsverktøy som Selenium og QTP. Coded UI ligner på disse verktøyene og kan være spesielt nyttig for funksjonstester.

Coded UI Test (CUIT) bruker Visual Studio IDE til å skrive skript, ettersom opptaket kan gjøres ved hjelp av Visual Studio.

Hva er Coded UI-test?

Coded UI-test (CUIT) er en automatisert test som driver applikasjoner gjennom brukergrensesnittet (UI). Derav navnet Coded UI-test (CUIT). Denne testen involverer funksjonstesting av UI-kontrollene. Den sjekker funksjonaliteten til hele applikasjonen, inkludert brukergrensesnittet. Den brukes også til å automatisere en eksisterende manuell test.

Coded UI-test

UI-test Architecture

Coded UI-testfunksjoner

Coded UI-funksjoner inkluderer

  • Funksjonell testing
  • Generer kode i VB/C#
  • Integrert med ALM story
  • Bygg, distribuer og test i laboratoriet eller som en del av en build
  • Lokale, eksterne kjører, datainnsamling
  • Rik utvidbarhet
  • Intensjonsbevisst opptak og spenstig avspilling

Coded UI-test (CUIT) støttede teknologier

Med kodet UI kan en applikasjon som har UI (User Interface) enkelt testes. Applikasjonen kan være enten vindusbasert eller nettbasert.

Coded UI støtter teknologier som

  • Vindusbaserte skrivebordsapplikasjoner
  • Webtjenester (SOAP, ASPX, etc.)
  • Vindustelefonapplikasjoner
  • WPF (Windows Presentasjon Foundation)
  • Nettapplikasjoner (HTML, Silverlight, HTML5)

Hvorfor bruke kodet brukergrensesnitt for testautomatisering

Grunnen til at kodet brukergrensesnitt for testautomatisering foretrekkes

  • Utviklere og programvaretestere kan samarbeide effektivt ved å bruke de samme verktøyene/språket.
  • Den støtter både web og Windows prosjekter.
  • Elementidentifikasjonsmekanismen er en flott funksjon i Coded UI. Den støtter også synkronisering
  • Playback Engine støtter funksjoner som 'WaitForControlExist' , 'WaitForReadyLevel' osv.
  • Ved hjelp av "Testagenter" kan automatiseringstester kjøres på eksterne maskiner
  • Automatiseringsteam kan utvikle sofistikerte tester ved å bruke kodet brukergrensesnitt med et lagdelt rammeverk
  • Programvaretestere kan fange opp unntak og registrere resultatet effektivt ved å bruke log4net.dll
  • Coded UI-verktøystøtte beskrivende programmering. Den lar programvaretestere automatisere scenarier basert på objektegenskaper
  • Den støtter AJAX-kontroller.

Hvordan lage Coded UI-tester (CUIT)

For å lage kodede UI-tester kan du gjøre det på følgende måter.

  • Generering fra et eksisterende handlingsopptak (konvertering fra manuell testopptak)
  • Opprette en ny kodet UI-test fra bunnen av
  • Skrive kode fra bunnen av

Innhold i en Coded UI-test

Når du oppretter en kodet UI-test, oppretter den kodede UI-testbyggeren et kart. Dette inkluderer brukergrensesnitt under test, testmetoder, parametere, påstander osv. For hver test oppretter den også en klassefil.

filet Innhold Kan redigeres
UIMap.Designer.cs Deklarasjonsdel UIMap Class Methods Properties Nei
UIMap.cs UIMap-klasse (delvis) Ja
CodedUITest1.cs CodeUITest1-klasse Metoder Egenskaper Ja
UIMap.uitest XML-kartet over brukergrensesnittet for testen. Den redigeres kun gjennom UI Map editor Nei
  1. UIMap.Designer.cs : Designeren inneholder kodevisningen til UIMap. Den genereres når en tester registrerer noen UI-interaksjon eller når noen objekter legges til manuelt i UIMap.
  2. UIMap.cs: Eventuelle endringer eller tilpasninger gjort til UIMap er lagret i denne filen. Til å begynne med vil denne filen være tom og kan fylles ut senere. Hvis det gjøres endringer direkte i UIMap.designer.cs-filen, sørg for at den ikke registreres, ellers vil alle endringer gå tapt.
  • CodedUITest1.cs: Denne filen inneholder kodet UI-testklasse, testmetoder, påstandsanrop og metodeanrop. Alle påstander og metoder blir som standard påkalt fra denne filen.
  • UIMap.uitest: Det er en XML-representasjon av UIMap-klassen. Det inkluderer vinduer, kontroller, egenskaper, metoder, handlinger og påstander. Det redigeres kun gjennom UI Map editor

Neste i dette Coded UI-veiledning, vi lærer hvordan du utfører Coded UI-automatiseringstest.

Hvordan å utføre Coded UI-test

Coded UI har to forskjellige måter å utføre en test for applikasjonen din på.

  1. Coded UI-opptak og avspilling eller
  2. Coded UI Håndkoding

Du må følge følgende trinn for å utføre Coded UI-testing,

  1. Lag en CodeDUI-testprosjekt
  2. Legg til en kodet UI-testfil
  3. Registrer en sekvens av handlinger
  4. Bekreft verdiene i UI-felt, for eksempel tekstbokser
  5. Se den genererte testkoden
  6. Legg til flere handlinger og påstander
  7. Rediger detaljene for testaktivitetene og påstandene
  8. Kjør testen

Beste praksis for Coded UI-test (CUIT)

Her er noen gode fremgangsmåter for en Coded Rammeverk for automatisering av brukergrensesnitttesting:

  • Bruke Coded UI-automatiseringstestbygger når det er mulig
  • Prøv å ikke endre UIMap.designer.cs-filen direkte. Ellers vil endringene du har gjort i filen bli overskrevet
  • Lag testen din som en sekvens av registrerte metoder
  • Hver registrert metode skal virke på en enkelt side, skjema eller dialogboks. Lag også en ny testmetode for hvert nytt skjema, side eller dialogboks
  • Når du oppretter en metode, bruker du et meningsfylt metodenavn i stedet for standardnavnet. Et meningsfylt navn hjelper til med å identifisere formålet med metoden
  • Hvis mulig, begrense hver registrert metode til mindre enn 10 handlinger. Denne tilnærmingen gjør det lettere å erstatte en metode hvis brukergrensesnittet endres.
  • For å lage påstander, bruk CodedUI-testbygger. Den legger automatisk til en påstandsmetode i UIMap.Designer.cs-filen.
  • Registrer testmetodene/påstandsmetodene på nytt hvis brukergrensesnittet endrer eller registrerer de berørte delene av en eksisterende testmetode på nytt.
  • Hvis du koder direkte med API, bruk metodene og egenskapene i klassene som er opprettet i UIMap.Designer.cs-filen. Disse timene vil gjøre arbeidet ditt mer pålitelig og enklere, og vil hjelpe deg til å bli mer produktiv.

Sammenligning av Coded UI-test vs. Selenium Vs QTP

Nedenfor er sammenligningstabellen for Coded UI Vs Selenium Vs QTP:

  • Selenium støtter ikke noen WPF i tillegg Windows søknader
  • Visual Studio CodedUI støtter Window Store-applikasjonstesting så vel som Window Phone-applikasjonstesting. Ingen andre verktøy støtter dette.
  • Test fullført støtter Window Application, men krever en plugin for å være installert.

Coded UI-test vs. Selenium Vs QTP

Sammenligning av Coded UI-test vs. Selenium Vs QTP

Spørsmål og svar

Coded UI-test er en automatisert test som driver et program gjennom brukergrensesnittet. Visual Studio registrerer UI-handlinger og genererer C#- eller VB.NET-testskript.

CUIT støtter webapplikasjoner, Windows Presentasjon Foundation (WPF), Windows Skjemaer og andre brukergrensesnittteknologier på tvers av skrivebords- og nettlesergrensesnitt.

I Visual Studio, legg til en Coded UI Test-prosjekt, og registrer deretter UI-handlinger med Coded UI Test Builder eller skriv dem manuelt. Opptakeren genererer UIMap og testmetoder.

Alle tre automatiserer funksjonell UI-testing. Selenium retter seg mot nettlesere, QTP støtter mange teknologier, og Coded UI er integrert med Visual Studio for .NET.

A Coded UI-testen inkluderer UIMap.Designer.cs, UIMap.cs, CodedUITest1.cs og UIMap.uitest. UIMap-filene lagrer definisjoner av brukergrensesnittelementer, og testfilen inneholder testmetodene.

AI-assistenter som GitHub Copilot autofullfører testmetoder, genererer påstander og foreslår selektorer for Coded brukergrensesnitt eller Selenium testskript.

Ja. AI-drevne testverktøy genererer testtilfeller, reparerer ødelagte selektorer selv når brukergrensesnittet endres, og konverterer registrerte trinn til kode.

Coded UI-testen er utdatert i Visual Studio 2019 og ikke inkludert i Visual Studio 2022. Microsoft anbefaler alternativer som Selenium or Appium for nye prosjekter.

Oppsummer dette innlegget med: