CodeTutorial zum d UI Testautomatisierungs-Framework

โšก Intelligente Zusammenfassung

CodedUI Test (CUIT) ist eine Funktion fรผr automatisierte Tests in Visual Studio, die eine Anwendung รผber ihre Benutzeroberflรคche testet. Hier erfahren Sie, was CUIT ist, welche Funktionen es bietet, welche Technologien unterstรผtzt werden, wie Sie Tests erstellen und welche Best Practices gelten.

  • ๏ธ Was es ist: Coded UI Test steuert eine Anwendung รผber ihre Benutzeroberflรคche (UI).
  • ๐ŸŽฌ Aufzeichnung: UI-Aktionen in Visual Studio aufzeichnen, um Testcode zu generieren.
  • ๐Ÿงฐ Technologies: CUIT unterstรผtzt Web, WPF, Windows Formulare und andere UI-Technologien.
  • ๐Ÿ†š Vs Selenium/QTP: Like Selenium und QTPCUIT automatisiert funktionale UI-Tests.
  • ๐Ÿค– KI-Hilfe: KI-Tools wie GitHub Copilot helfen bei der Generierung und Pflege von UI-Testcode.

Coded UI Test (CUIT)

Eine typische Softwareautomatisierung Tests erfordert Automatisierungstools wie Selenium und QTP. Coded UI ist diesen Tools รคhnlich und kann insbesondere fรผr Funktionstests nรผtzlich sein.

Coded UI Test ( CUIT) verwendet die Visual Studio IDE zum Schreiben von Skripten, da die Aufzeichnung mit Visual Studio.

Was ist Coded UI-Test?

Coded UI Test (CUIT) Es handelt sich um einen automatisierten Test, der Anwendungen รผber ihre Benutzeroberflรคche (UI) steuert. Daher der Name Coded UI-Test (CUIT). Dieser Test beinhaltet Funktionsprรผfung der UI-Steuerelemente. Es รผberprรผft die Funktionalitรคt der gesamten Anwendung, einschlieรŸlich der Benutzeroberflรคche. Es wird auch verwendet, um einen bestehenden manuellen Test zu automatisieren.

Coded UI-Test

UI-Test Architektur

Coded UI-Testfunktionen

CodeZu den UI-Funktionen gehรถren

  • Funktionsprรผfung
  • Code in VB/C# generieren
  • Integriert in die ALM-Story
  • Erstellen, bereitstellen und testen Sie im Labor oder als Teil eines Builds
  • Lokale, Remote-Lรคufe, Datenerfassung
  • Umfangreiche Erweiterbarkeit
  • Absichtsbewusste Aufnahme und belastbare Wiedergabe

Coded UI Test (CUIT) Unterstรผtzte Technologien

Mit der codierten Benutzeroberflรคche kann eine Anwendung, die รผber eine Benutzeroberflรคche (Benutzeroberflรคche) verfรผgt, einfach getestet werden. Die Anwendung kann entweder fensterbasiert oder webbasiert sein.

Coded UI unterstรผtzt Technologien wie

  • Fensterbasierte Desktop-Anwendungen
  • Webdienste (SOAP, ASPX usw.)
  • Windows Phone-Anwendungen
  • WPF (Windows Prรคsentation Foundation)
  • Webanwendungen (HTML, Silverlight, HTML5)

Warum eine codierte Benutzeroberflรคche fรผr die Testautomatisierung verwenden?

Der Grund, warum eine codierte Benutzeroberflรคche fรผr die Testautomatisierung bevorzugt wird

  • Entwickler und Softwaretester kรถnnen mithilfe derselben Tools/Sprache effektiv zusammenarbeiten.
  • Es unterstรผtzt sowohl Web als auch Windows Projekte.
  • Der Mechanismus zur Elementidentifizierung ist eine groรŸartige Funktion in Coded UI. AuรŸerdem unterstรผtzt es die Synchronisierung.
  • Die Playback Engine unterstรผtzt Funktionen wie โ€žWaitForControlExistโ€œ, โ€žWaitForReadyLevelโ€œ usw
  • Mit Hilfe von โ€žTests Agentsโ€œ kรถnnen Automatisierungstests auf Remote-Rechnern ausgefรผhrt werden
  • Automatisierungsteams kรถnnen anspruchsvolle Tests entwickeln, indem sie eine codierte Benutzeroberflรคche mit einem mehrschichtigen Framework verwenden
  • Softwaretester kรถnnen mithilfe von log4net.dll Ausnahmen erfassen und das Ergebnis effektiv aufzeichnen
  • Coded UI-Tool unterstรผtzt beschreibende Programmierung. Es ermรถglicht Softwaretestern, Szenarien basierend auf Objekteigenschaften zu automatisieren
  • Es unterstรผtzt AJAX-Steuerelemente.

So erstellen Sie Coded UI-Tests (CUIT)

Zum Erstellen codierter UI-Tests stehen Ihnen folgende Mรถglichkeiten zur Verfรผgung.

  • Generieren aus einer vorhandenen Aktionsaufzeichnung (Konvertieren aus einer manuellen Testaufzeichnung)
  • Erstellen eines neuen codierten UI-Tests von Grund auf
  • Code von Grund auf schreiben

Inhalt einer Coded UI-Test

Wenn Sie einen Test der programmierten UI erstellen, erstellt der Builder fรผr den Test der programmierten UI eine Karte. Dazu gehรถren die zu testende Benutzeroberflรคche, Testmethoden, Parameter, Behauptungen usw. Fรผr jeden Test wird auรŸerdem eine Klassendatei erstellt.

Reichen Sie das Inhalt Bearbeitbar
UIMap.Designer.cs Deklarationsabschnitt UIMap-Klassenmethodeneigenschaften Nein
UIMap.cs UIMap-Klasse (teilweise) Ja
CodedUITest1.cs CodeMethoden und Eigenschaften der Klasse UITest1 Ja
UIMap.uitest Die XML-Zuordnung der Benutzeroberflรคche fรผr den Test. Die Bearbeitung erfolgt nur รผber den UI-Map-Editor Nein
  1. UIMap.Designer.cs : Der Designer enthรคlt die Codeansicht der UIMap. Es wird generiert, wenn ein Tester eine UI-Interaktion aufzeichnet oder wenn einige Objekte manuell zur UIMap hinzugefรผgt werden.
  2. UIMap.cs: Alle an der UIMap vorgenommenen ร„nderungen oder Anpassungen werden in dieser Datei gespeichert. Anfangs ist diese Datei leer und kann spรคter ausgefรผllt werden. Wenn ร„nderungen direkt an der Datei UIMap.designer.cs vorgenommen werden, stellen Sie sicher, dass sie nicht aufgezeichnet werden, da sonst alle ร„nderungen verloren gehen.
  • CodedUITest1.cs: Diese Datei enthรคlt codierte UI-Testklassen, Testmethoden, Assertionsaufrufe und Methodenaufrufe. Alle Behauptungen und Methoden werden standardmรครŸig aus dieser Datei aufgerufen.
  • UIMap.uitest: Es handelt sich um eine XML-Darstellung der UIMap-Klasse. Sie enthรคlt Fenster, Steuerelemente, Eigenschaften, Methoden, Aktionen und Behauptungen. Sie kann nur รผber den UI Map-Editor bearbeitet werden.

Weiter in diesem CodeIn diesem Tutorial zur Benutzeroberflรคche lernen wir, wie man Folgendes durchfรผhrt: Coded UI-Automatisierungstest.

Wie man ausfรผhrt Coded UI-Test

Coded UI bietet zwei verschiedene Mรถglichkeiten, einen Test fรผr Ihre Anwendung durchzufรผhren.

  1. Coded UI-Aufnahme und -Wiedergabe oder
  2. Coded UI Handcodierung

Sie mรผssen die folgenden Schritte befolgen, um dies durchzufรผhren. Coded UI-Tests,

  1. Erstellen Sie CodedUI-Testprojekt
  2. Fรผgen Sie eine Testdatei fรผr die codierte UI hinzu
  3. Zeichnen Sie eine Abfolge von Aktionen auf
  4. รœberprรผfen Sie die Werte in UI-Feldern wie Textfeldern
  5. Sehen Sie sich den generierten Testcode an
  6. Fรผgen Sie weitere Aktionen und Behauptungen hinzu
  7. Bearbeiten Sie die Details der Testaktivitรคten und der Behauptungen
  8. Fรผhren Sie den Test durch

Best Practices fรผr Coded UI Test (CUIT)

Hier sind einige bewรคhrte Vorgehensweisen fรผr ein Coded UI-Testautomatisierungsframework:

  • Verwenden Sie die Coded UI-Automatisierungstest-Builder, wann immer mรถglich
  • Versuchen Sie, die Datei UIMap.designer.cs nicht direkt zu รคndern. Andernfalls werden die an der Datei vorgenommenen ร„nderungen รผberschrieben.
  • Erstellen Sie Ihren Test als Abfolge aufgezeichneter Methoden
  • Jede aufgezeichnete Methode sollte auf einer einzelnen Seite, einem Formular oder einem Dialogfeld ausgefรผhrt werden. Erstellen Sie auรŸerdem fรผr jedes neue Formular, jede neue Seite oder jedes neue Dialogfeld eine neue Testmethode.
  • Wenn Sie eine Methode erstellen, verwenden Sie anstelle des Standardnamens einen aussagekrรคftigen Methodennamen. Ein aussagekrรคftiger Name hilft dabei, den Zweck der Methode zu erkennen
  • Beschrรคnken Sie nach Mรถglichkeit jede aufgezeichnete Methode auf weniger als 10 Aktionen. Dieser Ansatz erleichtert das Ersetzen einer Methode, wenn sich die Benutzeroberflรคche รคndert.
  • Um eine Assertion zu erstellen, verwenden Sie CodedUI-Testgenerator. Er fรผgt automatisch eine Assertionsmethode zur Datei UIMap.Designer.cs hinzu.
  • Erfassen Sie die Testmethoden/Assertionsmethoden neu, wenn sich die Benutzeroberflรคchen รคndern oder die betroffenen Abschnitte einer vorhandenen Testmethode neu aufzeichnen.
  • Wenn Sie direkt mit der API programmieren, verwenden Sie die Methoden und Eigenschaften in den Klassen, die in der Datei UIMap.Designer.cs erstellt wurden. Diese Kurse machen Ihre Arbeit zuverlรคssiger und einfacher und helfen Ihnen, produktiver zu sein.

Vergleich von Coded UI-Test vs. Selenium Vs QTP

Nachfolgend finden Sie die Vergleichstabelle. Coded UI Vs Selenium Vs QTP:

  • Selenium unterstรผtzt kein WPF und auch nicht Windows Anwendungen
  • Visual Studio CodedUI unterstรผtzt das Testen von Windows Store-Anwendungen sowie das Testen von Windows Phone-Anwendungen. Keine anderen Tools unterstรผtzen dies.
  • Der abgeschlossene Test unterstรผtzt zwar die Windows-Anwendung, erfordert jedoch die Installation eines Plugins.

Coded UI-Test vs. Selenium Vs QTP

Vergleich von Coded UI-Test vs. Selenium Vs QTP

Hรคufig gestellte Fragen

CodeEin UI-Test ist ein automatisierter Test, der eine Anwendung รผber ihre Benutzeroberflรคche durchlรคuft. Visual Studio zeichnet UI-Aktionen auf und generiert C#- oder VB.NET-Testskripte.

CUIT unterstรผtzt Webanwendungen. Windows Prรคsentation Foundation (WPF), Windows Formulare und andere UI-Technologien fรผr Desktop- und Browser-Oberflรคchen.

Fรผgen Sie in Visual Studio Folgendes hinzu: CodeErstellen Sie ein UI-Testprojekt und zeichnen Sie anschlieรŸend UI-Aktionen mit dem CodeSie kรถnnen den UI Test Builder verwenden oder die Tests manuell schreiben. Der Recorder generiert die UIMap und die Testmethoden.

Alle drei automatisieren funktionale UI-Tests. Selenium Zielt auf Webbrowser ab QTP unterstรผtzt viele Technologien, und Coded UI ist in Visual Studio fรผr .NET integriert.

A Coded UI Test beinhaltet UIMap.Designer.cs, UIMap.cs, CodedUITest1.cs und UIMap.uitest. Die UIMap-Dateien speichern UI-Elementdefinitionen, und die Testdatei enthรคlt die Testmethoden.

KI-Assistenten wie GitHub Copilot vervollstรคndigen Testmethoden automatisch, generieren Assertions und schlagen Selektoren vor fรผr Coded UI oder Selenium Testskripte.

Ja. KI-gestรผtzte Testwerkzeuge generieren Testfรคlle, beheben selbst defekte Selektoren bei ร„nderungen der Benutzeroberflรคche und wandeln aufgezeichnete Schritte in Code um.

Coded UI Test ist in Visual Studio 2019 veraltet und in Visual Studio 2022 nicht mehr enthalten. Microsoft empfiehlt Alternativen wie Selenium or Appium fรผr neue Projekte.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: