Empfohlene Vorgehensweisen für Tests der codierten UI
In diesem Thema werden die bewährten Methoden zum Entwickeln von Tests der codierten UI beschrieben.
Bewährte Methoden
Erstellen Sie mithilfe der folgenden Richtlinien einen flexiblen Test der codierten UI.
Verwenden Sie nach Möglichkeit immer den Test-Generator für codierte UI.
Bearbeiten Sie die Datei UIMap.designer.cs nicht direkt. Wenn Sie dies tun, werden die Änderungen an der Datei überschrieben.
Erstellen Sie den Test als Sequenz aufgezeichneter Methoden. Weitere Informationen zum Aufzeichnen einer Methode finden Sie unter Gewusst wie: Erstellen eines Tests für codierte UI.
Jede aufgezeichnete Methode sollte auf eine einzelne Seite, ein Formular oder ein Dialogfeld wirken. Erstellen Sie eine neue Testmethode für jede neue Seite, jedes Formular und jedes Dialogfeld.
Verwenden Sie bei der Erstellung einer Methode statt des Standardnamens einen sinnvollen Methodennamen. Bei einem aussagekräftigen Namen kann der Zweck der Methode leichter identifiziert werden.
Beschränken Sie jede aufgezeichnete Methode nach Möglichkeit auf weniger als zehn Aktionen. Dank des modularen Ansatzes kann eine Methode leichter ersetzt werden, wenn sich die Benutzeroberfläche ändert.
Erstellen Sie jede Assertion mithilfe des Test-Generators für codierte UI, das der Datei UIMap.Designer.cs automatisch eine Assertionsmethode hinzufügt.
Wenn sich die Benutzeroberfläche ändert, zeichnen Sie die Test- oder Assertionsmethoden erneut auf, oder zeichnen Sie die betroffenen Abschnitte einer vorhandenen Testmethode erneut auf.
Erstellen Sie eine separate UIMap-Datei für jedes Modul in der zu testenden Anwendung. Weitere Informationen finden Sie unter Testing a Large Application with Multiple UI Maps.
Verwenden Sie in der zu testenden Anwendung aussagekräftige Namen, wenn Sie die Steuerelemente für die Benutzeroberfläche erstellen. So steigern Sie die Aussagekraft und die Benutzerfreundlichkeit der automatisch generierten Steuerelementnamen.
Wenn Sie Assertions erstellen, indem Sie mit der API Code erstellen, erstellen Sie eine Methode für jede Assertion in dem Teil der UIMap-Klasse, die in der Datei UIMap.cs ist. Rufen Sie diese Methode in der Testmethode auf, um die Assertion auszuführen.
Wenn Sie direkt mit der API Code erstellen, verwenden Sie nach Möglichkeit die Eigenschaften und Methoden in den Klassen, die in der Datei UIMap.Designer.cs in Ihrem Code generiert werden. Durch diese Klassen wird Ihre Arbeit leichter und zuverlässiger, und Sie können produktiver zu sein.
Tests der codierten UI werden automatisch an viele Änderungen der Benutzeroberfläche angepasst. Wenn z. B. die Position oder Farbe eines Benutzeroberflächenelements geändert wurde, findet der Test der codierten UI in den meisten Fällen dennoch das richtige Steuerelement.
Während eines Testlaufs findet das Testframework die UI-Steuerelemente mithilfe eines Satzes von Sucheigenschaften, die in den Definitionen für jede Steuerelementklasse übernommen werden. Diese werden vom Test-Generator für codierte UI in der Datei UIMap.Designer.cs erstellt. Die Sucheigenschaften enthalten Name-Wert-Paare von Eigenschaftennamen und Eigenschaftswerten, die verwendet werden können, um das Steuerelement zu identifizieren, z. B. die Eigenschaften FriendlyName, Name und ControlType des Steuerelements. Wenn die Sucheigenschaften unverändert sind, wird das Steuerelement vom Test der codierten UI in der Benutzeroberfläche gefunden. Wenn die Sucheigenschaften geändert wurden, verfügen die Tests der codierten UI über einen intelligenten Übereinstimmungsalgorithmus, der zum Suchen von Steuerelementen und Fenstern in der Benutzeroberfläche Heuristik anwendet. Wenn sich die Benutzeroberfläche geändert hat, können Sie möglicherweise durch Ändern der Sucheigenschaften von zuvor identifizierten Elementen sicherstellen, dass sie gefunden werden.
Vorgehensweise bei geänderter Benutzeroberfläche
Benutzeroberflächen werden während der Entwicklung häufig geändert. Es gibt folgende Möglichkeiten, um die Auswirkungen dieser Änderungen zu verringern:
Suchen Sie die aufgezeichnete Methode, die auf das Steuerelement verweist, und zeichnen Sie mit dem Test-Generator für codierte UI die Aktionen für die Methode erneut auf. Sie können den gleichen Namen für die Methode verwenden, sodass die vorhandenen Aktionen überschrieben werden.
Wenn ein Steuerelement über eine Assertion verfügt, die nicht mehr gültig ist:
Löschen Sie die Methode, die die Assertion enthält.
Entfernen Sie den Aufruf der Methode aus der Testmethode.
Fügen Sie eine neue Assertion hinzu, indem Sie die Fadenkreuzschaltfläche auf das UI-Steuerelement ziehen, die UI-Zuordnung öffnen und die neue Assertion hinzufügen.
Weitere Informationen zum Aufzeichnen von Tests der codierten UI finden Sie unter Gewusst wie: Generieren eines Tests der codierten UI durch Aufzeichnen der getesteten Anwendung oder Gewusst wie: Erstellen eines Tests für codierte UI.
Vorgehensweise, wenn ein Hintergrundprozess abgeschlossen werden muss, bevor der Test fortgesetzt werden kann
Möglicherweise müssen Sie waren, bis ein Prozess beendet wird, bevor Sie mit der nächsten Benutzeroberflächen-Aktion fortfahren können. Verwenden Sie hierzu WaitForReadyLevel, um zu warten, bevor der Test fortgesetzt wird (siehe folgendes Beispiel).
// Set the playback to wait for all threads to finish
Playback.PlaybackSettings.WaitForReadyLevel = WaitForReadyLevel.AllThreads;
// Press the submit button
this.UIMap.ClickSubmit();
// Reset the playback to wait only for the UI thread to finish
Playback.PlaybackSettings.WaitForReadyLevel = WaitForReadyLevel.UIThreadOnly;
Siehe auch
Aufgaben
Gewusst wie: Erstellen eines Tests für codierte UI
Gewusst wie: Generieren eines Tests der codierten UI durch Aufzeichnen der getesteten Anwendung
How to: Add UI Controls and Validation Code Using the Coded UI Test Builder
How to: Add UI Controls and Validation Code Using the Coded UI Test Builder
Referenz
UITesting
Konzepte
Unterstützte Konfigurationen und Plattformen für Tests der codierten UI und Aktionsaufzeichnungen