Lernprogramm zum Testautomatisierungsframework für codierte UI
Ein typisches Testen der Softwareautomatisierung erfordert Automatisierungstools wie Selenium und QTP. Die codierte Benutzeroberfläche ähnelt diesen Tools und kann besonders nützlich für Funktionstests sein.
Coded UI Test (CUIT) verwendet Visual Studio IDE zum Schreiben von Skripts, da die Aufzeichnung mit Visual Studio erfolgen kann.
In diesem Tutorial zur codierten UI für Anfänger lernen Sie-
- Was ist ein Coded-UI-Test?
- Testfunktionen für codierte UI
- Unterstützte Technologien für Coded UI Test (CUIT)
- Warum eine codierte Benutzeroberfläche für die Testautomatisierung verwenden
- So erstellen Sie Tests für codierte UI (CUIT)
- Inhalte eines Coded-UI-Tests
- So führen Sie einen Coded-UI-Test durch
- Best Practices für Coded UI-Tests (CUIT)
- Vergleich von Coded UI Test vs. Selenium vs. QTP
Was ist ein Coded-UI-Test?
Coded UI-Test (CUIT) ist ein automatisierter Test, der Anwendungen über seine Benutzeroberfläche (UI) steuert. Daher der Name Coded UI Test (CUIT). Dieser Test umfasst Funktionstests der UI-Steuerelemente. Es überprüft die Funktionalität der gesamten Anwendung, einschließlich der Benutzeroberfläche. Es wird auch verwendet, um einen vorhandenen manuellen Test zu automatisieren.
UI-Testarchitektur
Testfunktionen für codierte UI
Zu den Funktionen der codierten Benutzeroberfläche gehören
- Funktionstests
- Generieren Sie Code in VB/C#
- In ALM-Story integriert
- Erstellen, bereitstellen und testen im Labor oder als Teil eines Builds
- Lokal, Remote-Läufe, Datenerfassung
- Umfangreiche Erweiterbarkeit
- Absichtsbewusste Aufnahme und robuste Wiedergabe
Unterstützte Technologien für Coded UI Test (CUIT)
Mit codierter UI kann eine Anwendung mit UI (User Interface) 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 Presentation Foundation)
- Webanwendungen (HTML, Silverlight, HTML5)
Warum eine codierte Benutzeroberfläche für die Testautomatisierung verwenden
Der Grund, warum die codierte Benutzeroberfläche für die Testautomatisierung bevorzugt wird
- Entwickler und Softwaretester können mit denselben Tools/Sprachen effektiv zusammenarbeiten.
- Es unterstützt sowohl Web- als auch Windows-Projekte.
- Der Elementidentifikationsmechanismus ist ein großartiges Feature in Coded UI. Außerdem unterstützt es die Synchronisation
- 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 Ausnahmen erfassen und das Ergebnis mithilfe von log4net.dll effektiv aufzeichnen
- Das codierte UI-Tool unterstützt die deskriptive Programmierung. Es ermöglicht Softwaretestern, Szenarien basierend auf Objekteigenschaften zu automatisieren
- Es unterstützt AJAX-Steuerelemente.
So erstellen Sie codierte UI-Tests (CUIT)
Um codierte UI-Tests zu erstellen, können Sie dies auf folgende Weise tun.
- Generieren aus einer bestehenden Aktionsaufzeichnung (Konvertieren aus einer manuellen Testaufzeichnung)
- Erstellen eines neuen codierten UI-Tests von Grund auf
- Code von Grund auf neu schreiben
Inhalte eines Coded-UI-Tests
Wenn Sie einen Test für die codierte UI erstellen, erstellt der Testgenerator für die codierte UI eine Karte. Dazu gehören die zu testende Benutzeroberfläche, Testmethoden, Parameter, Zusicherungen usw. Für jeden Test wird auch eine Klassendatei erstellt.
- 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.
- 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 wird, da sonst alle Änderungen verloren gehen.
- CodedUITest1.cs :Diese Datei enthält codierte UI-Testklassen, Testmethoden, Assertionsaufrufe und Methodenaufrufe. Alle Assertionen und Methoden werden standardmäßig aus dieser Datei aufgerufen.
- UIMap.uitest :Es ist eine XML-Darstellung der UIMap-Klasse. Es umfasst Fenster, Steuerelemente, Eigenschaften, Methoden, Aktionen und Behauptungen. Sie wird nur über den UI-Zuordnungseditor bearbeitet
Als Nächstes lernen wir in diesem Tutorial zur codierten UI, wie man einen Automatisierungstest für die codierte UI durchführt.
So führen Sie einen Coded-UI-Test durch
Die codierte Benutzeroberfläche bietet zwei verschiedene Möglichkeiten, einen Test für Ihre Anwendung durchzuführen.
- Codierte UI-Aufzeichnung und -Wiedergabe oder
- Codierte UI-Handcodierung
Sie müssen den folgenden Schritt ausführen, um Coded UI-Tests durchzuführen,
- Erstellen Sie ein CodedUI-Testprojekt
- Fügen Sie eine Testdatei für die codierte UI hinzu
- Aktionsfolge aufzeichnen
- Überprüfen Sie die Werte in UI-Feldern wie Textfeldern
- Sehen Sie sich den generierten Testcode an
- Weitere Aktionen und Behauptungen hinzufügen
- Bearbeiten Sie die Details der Testaktivitäten und der Behauptungen
- Führen Sie den Test durch
Best Practices für Coded UI-Tests (CUIT)
Hier sind einige Best Practices für ein Testautomatisierungs-Framework für codierte UI:
- Verwenden Sie wann immer möglich den Testgenerator für die Automatisierung der codierten UI
- Versuchen Sie, die Datei UIMap.designer.cs nicht direkt zu ändern. Andernfalls werden die Änderungen, die Sie an der Datei vorgenommen haben, überschrieben
- Erstellen Sie Ihren Test als eine Folge aufgezeichneter Methoden
- Jede aufgezeichnete Methode sollte auf einer einzelnen Seite, einem Formular oder einem Dialogfeld ausgeführt werden. Erstellen Sie außerdem eine neue Testmethode für jedes neue Formular, jede neue Seite oder jedes neue Dialogfeld
- 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 identifizieren
- Wenn möglich, beschränken Sie jede aufgezeichnete Methode auf weniger als 10 Aktionen. Dieser Ansatz erleichtert das Ersetzen einer Methode, wenn sich die Benutzeroberfläche ändert.
- Um eine Behauptung zu erstellen, verwenden Sie den CodedUI Test Builder. Es fügt der Datei UIMap.Designer.cs automatisch eine Assertion-Methode hinzu.
- Erneutes Aufzeichnen der Testmethoden/Assertionsmethoden, wenn sich die Benutzerschnittstellen ändern oder die betroffenen Abschnitte einer bestehenden Testmethode neu aufzeichnen.
- Wenn Sie direkt mit der API codieren, 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
Unten ist die Vergleichstabelle von Coded UI Vs Selenium Vs QTP:
- Selenium unterstützt weder WPF noch Windows-Anwendungen
- Visual Studio CodedUI unterstützt das Windows Store-Anwendungstesten sowie das Windows Phone-Anwendungstesten. Keine anderen Tools unterstützen dies.
- Test Complete unterstützt Windows-Anwendungen, erfordert jedoch die Installation eines Plug-Ins.
Vergleich von Coded UI Test Vs Selenium Vs QTP
Zusammenfassung:
- Automatisierte Tests, die Ihre Anwendung über ihre Benutzeroberfläche (UI) steuern, werden als CodedUI-Tests (CUITs) bezeichnet.
- Das Testautomatisierungsframework für codierte UI unterstützt Technologien wie Webdienste, Windows Phone-Anwendungen, Webanwendungen usw.
- Coded UI Testing ermöglicht Entwicklern und Softwaretestern eine effektive Zusammenarbeit unter Verwendung derselben Tools/Sprache
- Inhalt oder eine Datei, die während der Verwendung von CodedUI erstellt wurde, enthält
- UIMap.Designer.cs
- UIMap.cs
- CodedUITest1.cs
- UIMap.uitest
C Sprache
- Was ist industrielle Automatisierung?
- C# dieses Schlüsselwort
- RASPBERRY PI HOME AUTOMATION
- C#- und .Net-Versionsverlauf
- C-Tutorial
- Verilog-Tutorial
- Der Unterschied zwischen robotergesteuerter Prozessautomatisierung und Testautomatisierung
- Evolution der Testautomatisierung mit künstlicher Intelligenz
- Schweißautomatisierungsausrüstung
- Automatisierung in der Industrie 4.0