[JAVA] [Hinweis] Entwurfsmuster, das bei der Automatisierung des GUI-Tests mit Selen berücksichtigt wird

Der Produktfreigabezyklus betrug ungefähr ein Jahr, Seit wir das System zur Veröffentlichung von Patches von Zeit zu Zeit ersetzt haben, hat die Anzahl der Tests zugenommen.

Das Flattern der Benutzeroberfläche ist nur schmerzhaft Ich dachte über das beste Design und den besten Betrieb für die Automatisierung in der Zukunft nach.

Da es sich im Prototypenstadium befindet, kann es sich ändern, aber es ist die Konfiguration bis jetzt.

Entwurfsmuster

Die GUI wird sich wahrscheinlich ändern und die Tests werden regelmäßig durchgeführt. Ich habe mich für das Seitenobjekt-Entwurfsmuster entschieden, weil ich die Wartung vereinfachen möchte.

Ich durfte mich auf diesen Bereich beziehen. https://www.seleniumhq.org/docs/06_test_design_considerations.jsp#page-object-design-pattern http://ninoseki.hatenablog.com/entry/2013/01/09/212424 http://www.assertselenium.com/automation-design-practices/page-object-pattern/

Was ist das Seitenobjekt-Entwurfsmuster? Ein Mechanismus zum Erstellen von Tests, die gegen Änderungen resistent sind, indem die Klasse für jede zu testende Seite und die Testfallklasse getrennt werden.

Für Details ist der obige Link hilfreich, Erstellen Sie eine 〇〇Page-Klasse, um Bildschirmelemente mit der Selenium-Methode anzugeben. 〇 〇 Die Seitenklasse wird grundsätzlich für jeden Bildschirm erstellt Testen Sie mit der XX-Page-Methode in der XX-Testklasse.

Durch Erstellen einer Klasse, die Elemente für jede Seite angibt Es wird in verschiedenen Testfällen eingesetzt. Ich denke, das ist der Punkt.

-void, wenn der Rasen keine Zeichenfolge usw. ohne Seitenübergang zurückgibt

Beurteilung des Testerfolgs / -versagens

Sie können das Testergebnis auch beurteilen, indem Sie überprüfen, ob auf dem angezeigten Bildschirm usw. ein bestimmtes Element vorhanden ist. Ich weiß es nicht, bis die Bildschirmanzeige zusammenbricht. Ich möchte beurteilen, ob die GUI für das menschliche Auge seltsam ist Ich beschloss, einen Screenshot der Testergebnisse zu machen und die Ergebnisse mit dem menschlichen Auge zu sehen.

Wechseln zwischen mehreren Browsern

Durch Ändern des in Selenium verwendeten Treibers können Sie Tests mit mehreren Browsern mit demselben Testcode ausführen. Erstellen Sie ein Treiberobjekt für den Browser, den Sie angeben möchten, mit einer Beschreibung wie "DRIVER = new ChromeDriver (); // Chrome object".

Ich möchte hier also flexibel wechseln Ermöglichen Sie die Angabe des Browsers in der Einstellungsdatei.

Andere Dinge, die sich ändern können, wie URLs und Screenshot-Speicherverzeichnisse, sollten in die Einstellungsdatei ausgeschnitten und gelesen werden.

Elementspezifikation

Es ist schwierig, jeden einzelnen festzulegen, aber es scheint keine andere Wahl zu geben, als ihn stetig zu spezifizieren. Ich hoffe, es gibt einen anderen Weg.

Erstellen Sie nach Möglichkeit Attribute zum Testen mit benutzerdefinierten Daten während der Entwicklung. Es scheint stark gegen GUI-Änderungen zu sein.

Referenz

Umschalten per Browser http://www.seleniumeasy.com/selenium-tutorials/simple-page-object-model-framework-example

Angeben benutzerdefinierter Datenattribute https://qiita.com/okitan/items/eb8f8e253d0811777215

Recommended Posts

[Hinweis] Entwurfsmuster, das bei der Automatisierung des GUI-Tests mit Selen berücksichtigt wird
[Entwurfsmuster] Allgemeine Logik mit der Vorlagenmethode