Frage

Ich muss zugeben, dass ich mich in Selen wegen seiner Aufnahme- und Wiedergabefunktion sowie der Testfallgenerierungsfunktion für die von der IDE aufgezeichneten Aktionen verliebt habe. Ich zögere jedoch immer noch, mit der Implementierungsphase fortzufahren, da zufällige Details (z. B. Lokalisieren der Ereignisse mit DOM, xpath usw.), die während der Aufzeichnung in den Testfall eingebaut werden könnten Der Testfall ist anfällig, wenn nach dem Import in den RC eine HTML-Änderung auftritt. Ich verstehe voll und ganz, dass es Teil der Aufgabe von Testern ist, die erwarteten Ergebnisse von Zeit zu Zeit im Rahmen des Regressionstests anzupassen, aber ich möchte auch nicht, dass die dafür aufgewendete Zeit länger ist als die Zeit, die für den manuellen Test benötigt wird .

Soweit ich weiß, hat Selen mit Roboter-Framework die Schlüsselwörter Form von Testfällen. Ich vermute, es ermöglicht uns, die zufälligen Details in verschiedene Schlüsselwörter zu extrahieren, wodurch die Anpassung der Testfälle einfacher und wartbarer wird. (Bitte korrigieren Sie mich, wenn ich falsch liege)

Es wird geschätzt, Vorschläge zu hören, wie eine effektive UI-Automatisierungsumgebung eingerichtet werden sollte. Sollte ich nur Selenium RC oder Selenium mit Robot Framework verwenden? Und warum?

Vielen Dank im Voraus

War es hilfreich?

Lösung

Sie sind absolut richtig, dass zufällige und häufig Details in den produktiven Skripts das größte Problem der Automatisierung der Record-and-Playback-Automatisierung ist. Sie können offensichtlich die Details von den Skripts nach der Aufnahme entfernen, aber meiner Meinung nach ist es besser, wiederverwendbare Bibliotheken und Codeskripts manuell von Anfang an zu erstellen.

Eine gute Alternative zum Codieren von Skripts mithilfe von "echten" Programmiersprachen verwendet einiger Automatisierungsrahmen mit höherem Niveau wie Roboter Framework , den Sie erwähnt haben. Wie Sie spekuliert, machen Roboter wiederverwendbare Schlüsselwörter und auch Variablen, um Details von Tests von Tests sehr einfach zu extrahieren. Die Testfälle in SeleniumLibrary's Demo zeigt das sehr gut und die Demo zeigt auch So verwenden Sie Selen durch Roboter.

Sie haben auch nach sikuli . Ich habe es nie selbst benutzt, aber es sieht sicher interessant aus. Sie könnten sich für dieses großartige How-to das erklärt, wie es durch Roboterrahmen verwendet wird.

Andere Tipps

Unser Unternehmen verwendet Fitnesse, nicht Roboter, um Selen zu kontrollieren, aber wir haben jedoch das gleiche Problem.Wir wechselten von der Erstellung von Annahmen über das DOM, um nur auf Elemente nach ID zuzugreifen.Da dies in Fitnesse umständlich ist, arbeiten wir derzeit daran, einem Selenium-Backend in unserem eigenen Rahmen hinzuzufügen (das zuvor nur Backends für Java und Smalltalk hatte).

, indem er dazu erfordert, dass diese Elemente mit bestimmten IDs in der DOM vorhanden sind, werden wir natürlich unsere Tests brechen, wenn jemand die Elemente von der Seite entfernt;Wir haben jedoch festgestellt, dass dieses Verhalten sehr nützlich ist, da dies den Vertrag den mit der Implementierung getroffenen Tests erzwingt, und es ist eine gute Sache, dass wir fehlende Elemente finden, sobald jemand die Implementierung gebrochen hat.

Darüber hinaus ist es eine gute Praxis, um die UI-Automatisierung Skin-Tiefe zu halten: Nur testen, was auf der Seite mit Selen vorhanden ist, und testen Sie die Business-Logik, indem Sie die zugrunde liegenden Funktionen direkt anrufen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top