Ein typisches Testen der Softwareautomation erfordert ein Automatisierungstool wie Selenium und QTP. Die codierte Benutzeroberfläche ähnelt diesen Tools und kann besonders für Funktionstests nützlich sein.
Coded UI Test (CUIT) verwendet Visual Studio IDE zum Schreiben von Skripten, da die Aufzeichnung mit Visual Studio erfolgen kann.
In diesem Tutorial lernen Sie:
- Was ist der Coded UI Test (CUIT)?
- Codierte UI-Testfunktionen
- Von CUIT (Coded UI Test) unterstützte Technologien
- Warum eine codierte Benutzeroberfläche für die Testautomatisierung verwenden?
- So erstellen Sie codierte UI-Tests (CUIT)
- Inhalt eines codierten UI-Tests
- So führen Sie einen codierten UI-Test durch
- Best Practices für den Coded UI Test (CUIT)
- Vergleich des codierten UI-Tests Vs. Selen vs. QTP
Was ist der Coded UI Test (CUIT)?
CUIT sind automatisierte Tests, die Ihre Anwendung über die Benutzeroberfläche steuern. Daher der Name codierte UI-Tests (CUITs). Diese Tests umfassen Funktionstests der UI-Steuerelemente. Es überprüft die Funktionalität der gesamten Anwendung einschließlich der Benutzeroberfläche.
Codierte UI-Testfunktionen
Codierte UI-Funktionen umfassen
- Funktionsprüfung
- Generieren Sie Code in VB / C #
- Integriert in die ALM-Geschichte
- Erstellen, Bereitstellen und Testen im Labor oder als Teil eines Builds
- Lokale Remote-Läufe, Datenerfassung
- Reichhaltige Erweiterbarkeit
- Absichtsbewusste Aufnahme und belastbare Wiedergabe
Von CUIT (Coded UI Test) unterstützte Technologien
Mit der codierten Benutzeroberfläche kann eine Anwendung mit Benutzeroberfläche (User Interface) einfach getestet werden. Die Anwendung kann entweder fensterbasiert oder webbasiert sein.
Codierte Benutzeroberfläche unterstützt Technologien wie
- Fensterbasierte Desktop-Anwendungen
- Webdienste (SOAP, ASPX usw.)
- Fenstertelefonanwendungen
- WPF (Windows Presentation 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 mit denselben Tools / derselben Sprache effektiv zusammenarbeiten.
- Es unterstützt sowohl Websites als auch Windows-Projekte.
- Der Elementidentifizierungsmechanismus ist eine großartige Funktion in der codierten Benutzeroberfläche. Außerdem wird die Synchronisierung unterstützt
- Die Playback Engine unterstützt Funktionen wie 'WaitForControlExist', 'WaitForReadyLevel' usw.
- Mithilfe von "Test Agents" können Automatisierungstests auf Remotecomputern ausgeführt werden
- Automatisierungsteams können mithilfe einer codierten Benutzeroberfläche mit einem mehrschichtigen Framework anspruchsvolle Tests entwickeln
- Software-Tester können Ausnahmen erfassen und das Ergebnis mithilfe von log4net.dll effektiv aufzeichnen
- Das codierte UI-Tool unterstützt die beschreibende 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 Arten tun.
- Generieren aus einer vorhandenen Aktionsaufzeichnung (Konvertieren aus einer manuellen Testaufzeichnung)
- Erstellen eines neuen codierten UI-Tests von Grund auf neu
- Code von Grund auf neu schreiben
Inhalt eines codierten UI-Tests
Wenn Sie einen codierten UI-Test erstellen, erstellt der Builder für codierte UI-Tests eine Map. Dies umfasst die zu testende Benutzeroberfläche, Testmethoden, Parameter, Zusicherungen usw. Für jeden Test wird auch eine Klassendatei erstellt.
Datei | Inhalt | Bearbeitbar |
---|---|---|
UIMap.Designer.cs | Deklarationsabschnitt Eigenschaften der UIMap-Klassenmethoden | Nein |
UIMap.cs | UIMap-Klasse (teilweise) | Ja |
CodedUITest1.cs | Methodeneigenschaften der CodeUITest1-Klasse | Ja |
UIMap.uitest | Die XML-Karte der Benutzeroberfläche für den Test. Es wird nur über den UI Map Editor bearbeitet | Nein |
- 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. Diese Datei ist zunächst 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 eine codierte UI- Testklasse , Testmethoden, einen Assertionsaufruf und einen Methodenaufruf. Alle Zusicherungen und Methoden werden standardmäßig aus dieser Datei aufgerufen.
- UIMap.uitest : Dies ist eine XML-Darstellung der UIMap-Klasse. Es enthält Fenster, Steuerelemente, Eigenschaften, Methoden, Aktionen und Zusicherungen. Es wird nur über den UI Map Editor bearbeitet
So führen Sie einen codierten UI-Test durch
Die codierte Benutzeroberfläche bietet zwei verschiedene Möglichkeiten, um einen Test für Ihre Anwendung durchzuführen.
- Codierte UI-Aufnahme und Wiedergabe oder
- Codierte Benutzeroberfläche Handcodierung
Sie müssen den folgenden Schritt ausführen, um einen codierten UI-Test durchzuführen:
- Erstellen Sie ein codiertes UI-Testprojekt
- Fügen Sie eine codierte UI-Testdatei hinzu
- Zeichnen Sie eine Abfolge von Aktionen auf
- Überprüfen Sie die Werte in UI-Feldern wie Textfeldern
- Zeigen Sie den generierten Testcode an
- Fügen Sie weitere Aktionen und Zusicherungen hinzu
- Bearbeiten Sie die Details der Testaktivitäten und die Zusicherungen
- Führen Sie den Test aus
Best Practices für den Coded UI Test (CUIT)
Hier sind einige bewährte Methoden für einen codierten UI-Test:
- Verwenden Sie nach Möglichkeit den Coded UI Test Builder
- 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 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.
- Verwenden Sie zum Erstellen einer Zusicherung den codierten UI-Test-Builder. Es wird automatisch eine Assertionsmethode zur Datei UIMap.Designer.cs hinzugefügt.
- Zeichnen Sie die Testmethoden / Assertionsmethoden erneut auf, wenn die Benutzeroberfläche die betroffenen Abschnitte einer vorhandenen Testmethode ändert oder neu aufzeichnet.
- 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 werden.
Vergleich des codierten UI-Tests Vs. Selen vs. QTP
Unten finden Sie die Vergleichstabelle des codierten UI-Tests mit anderen Automatisierungstools.
- Selen unterstützt keine WPF- und Windows-Anwendungen
- Die visuell codierte Benutzeroberfläche von Visual Studio unterstützt das Testen von Windows Store-Anwendungen sowie das Testen von Windows Phone-Anwendungen. Keine anderen Tools unterstützen dies.
- Test abgeschlossen unterstützt Windows-Anwendung, erfordert jedoch die Installation eines Plugins.
Zusammenfassung:
- Automatisierte Tests, die Ihre Anwendung über die Benutzeroberfläche steuern, werden als codierte UI-Tests (CUITs) bezeichnet.
- Die codierte Benutzeroberfläche unterstützt Technologien wie Webdienste, Windows Phone-Anwendungen, Webanwendungen usw.
- Mit der codierten Benutzeroberfläche können Entwickler und Softwaretester effektiv mit denselben Tools / derselben Sprache zusammenarbeiten
- Inhalte oder eine Datei, die mit der codierten Benutzeroberfläche erstellt wurde, enthalten
- UIMap.Designer.cs
- UIMap.cs
- CodedUITest1.cs
- UIMap.uitest