OpenESTEST ist ein kostenloses und Open -Source -Funktionstest -Automatisierungstool für Webanwendungen, mobile Apps und APIs.
Wir wissen, dass es bereits viele Dinge gibt, sowohl etablierte kommerzielle Produkte als auch Open -Source -Projekte. Wir haben lange nach dem richtigen Werkzeug gesucht und einen fairen Versuch unternommen, einige von ihnen zu versuchen, mit Ergebnissen, die unsere Erwartungen nicht genau erfüllten. Wir suchten nach einem Tool, das wir standardisieren konnten, mit dem wir die Testautomatisierungsbemühungen in mehreren internen und externen Teams mit verschiedenen Größen, Fähigkeiten, Budgets und geografischen Standorten vereinen können. Dieses Tool müsste die neuesten Best Practices in der Branche einbeziehen und im Idealfall unter einer Open -Source -Lizenz veröffentlicht werden, damit wir lange Prozesse beseitigen und die Kosten senken können. Angesichts dieser Überlegungen sowie anderer Anforderungen entschieden wir, dass das Gebäude von Grund auf die verantwortungsvolle Wahl war.
OpenEnTest zielt darauf ab, alle Funktionen eines modernen Testautomatisierungswerkzeugs anzubieten und gleichzeitig gesunde Prinzipien zu folgen. Wir wollen die funktionale Testautomatisierung demokratisieren und eine großartige Gemeinschaft schaffen, die befugt ist, auf sich selbst aufzubauen. Während nichts im Leben perfekt ist und kein Stück Software jemals vollständig ist, versprechen wir, dass jede Funktion, die in dieses Produkt einging, gründlich durchdacht und sorgfältig implementiert wurde, um das beste Gleichgewicht zwischen Kraft und Flexibilität auf der einen Seite und der Benutzerfreundlichkeit auf der anderen Seite zu erreichen.
Webtests mit Selen. Alle Browser unterstützt. Führen Sie Tests auf Ihrem lokalen Computer oder mit einem Cloud -Anbieter aus.
Mobile Tests für Android- und iOS -Apps mit Appium. Führen Sie Tests auf Ihrem lokalen Computer oder mit einem Cloud -Anbieter aus.
API -Tests , die auf der Apache Httpclient Library basiert.
Keyword-gesteuerte Tests . Stellen Sie Ihre Tests mithilfe höherer Bausteine zusammen, die die Komplexität der zugrunde liegenden Technologie verbergen, und lassen Sie sich auf prägnante und lesbare Weise ausdrücken.
Scripting -Unterstützung . Decken Sie komplexe Testszenarien mit JavaScript-Code ab, die organisch in Ihren von Keywords gesteuerten Test eingebettet sind, um die Dinge sauber und lesbar zu halten.
Parallele Tests . Die Anzahl der Testsitzungen, die Sie parallel durchführen können, ist nur durch die Ressourcen der Maschine begrenzt, auf der Sie ausführen (aber es gibt immer mehr Maschinen in der Cloud).
Verteilte Tests . Schreiben Sie Tests, die nahtlos auf mehrere Maschinen, Netzwerke und Technologien ausgeführt werden. Schreiben Sie Integrationstests, die sich über Mobile, Web, API und alles dazwischen erstrecken.
Datengesteuerte Tests . Führen Sie einen Test mehrmals über eine Reihe von Datensätzen aus, die in einer separaten Datendatei beibehalten werden.
Erweiterbar . Integrieren Sie in jede Technologie, indem Sie eigene benutzerdefinierte Testaktionen (Schlüsselwörter) erstellen.
Quellenkontrollfreundlich von Design. Arbeiten Sie mit Zuversicht zusammen und wissen, dass Git Ihren Rücken hat. Perfekt für große oder geografisch verteilte Teams.
Umgebungen . Erstellen Sie Ihre Tests einmal und führen Sie mit mehreren Umgebungen oder verwenden Sie verschiedene Testsätze von Testdaten.
Funktioniert gut mit anderen . Verwenden Sie die einfache HTTP -API, um die Kontrolle über Start- und Überwachung von Testsitzungen, Sammeln von Testergebnissen usw. zu übernehmen.
Plattformübergreifend , auf MacOS, Windows und Linux ausgeführt.
(Und wir mussten viele wirklich coole Funktionen überspringen, um diesen Brief zu halten)
Voraussetzungen: Node.js 8 oder mehr; Java -Laufzeit 8 oder mehr.
Installieren Sie von NPM:
npm install opentest -gVideo -Tutorial: https://getopentest.org/docs/installation.html (unter Windows aufgezeichnet)
Erstellen Sie ein Verzeichnis mit dem Namen "Opentest" in Ihrem Heimverzeichnis, das als Spielplatz für diesen Leitfaden und cd in dieses Verzeichnis verwendet wird.
cd ~
mkdir opentest
cd opentest Notiz | Verwenden Sie unter Windows md anstelle von mkdir . |
Führen Sie den folgenden Befehl aus
opentest quick-startSie sollten jetzt diese Dateien und Verzeichnisse auf Ihrem aktuellen Weg haben:
server
└── server.yaml
actor1
└── actor.yaml
test-repo
├── macros
│ └── ...
├── scripts
│ └── ...
├── templates
│ └── ...
└── tests
└── ... Der server und die actor1 -Verzeichnisse werden als Arbeitsverzeichnisse für den Openentest -Server bzw. der Testakteur verwendet. Das test-repo -Verzeichnis ist ein Beispiel-Test-Repository, das einige grundlegende Merkmale von Openentest zeigt.
Öffnen Sie ein neues Terminalfenster, cd im Arbeitsverzeichnis des Servers und starten Sie den OpenTest -Server:
cd ~/opentest/server
opentest serverDer OpenTest-Server (auch bekannt als der Sync-Server) ist eine Node.js-Anwendung, deren Hauptfunktionen darin bestehen, die Testausführung zu orchestrieren und eine webbasierte Benutzeroberfläche bereitzustellen.
Öffnen Sie ein neues Terminalfenster, cd im Arbeitsverzeichnis des Schauspielers und starten Sie den Testschauspieler:
cd ~/opentest/actor1
opentest actorDer Testakteur ist eine Java -Anwendung, die auf dem zu testenden System ausgeführt wird und Testschritte ausführt, die vom Sync -Server angewiesen wurden.
Öffnen Sie einen Webbrowser und navigieren Sie zu http: // localhost: 3000.
Wählen Sie im Menü Session> Session aus der Vorlage erstellen . Wählen Sie die Quick -Start -Tests der Vorlage und klicken Sie auf Sitzung erstellen . Warten Sie ein paar Sekunden und aktualisieren Sie Ihren Browser, um das Ergebnis der Testsitzung anzuzeigen.
Es gibt drei Komponenten, die man öffnen kann:
Der Sync -Server , eine Node.js -Anwendung, die hauptsächlich drei Funktionen ausführt:
Orchestriert die Testausführung.
Enthält eine Web -Benutzeroberfläche, mit der Testsitzungen erstellt, Testergebnisse usw. untersucht werden können.
Entellt eine freundliche API, die ungefähr die gleichen Zwecke wie die Benutzeroberfläche genutzt werden kann.
Der Testakteur , eine Java -Anwendung, die mit der Ausführung von Tests verantwortlich ist, wie vom SYNC -Server angewiesen. Es können mehrere Akteure an demselben Test teilnehmen, und Akteure können auf jedem Computer in jedem Netzwerk, einschließlich in der Cloud, bereitgestellt werden. Die einzige Anforderung ist, dass der Testakteur mit der vom Synchronisierungsserver entlarvten HTTP -API kommunizieren kann. Es ist nicht erforderlich, dass der Sync -Server die Kommunikation mit dem Schauspieler initiieren kann, was das Setup in Szenarien erheblich vereinfacht, in denen der Schauspieler in einem Labor, das hinter einer Firewall oder in einem Netzwerk steckt, auf das nicht vom Maschine auf dem Sync -Server ausgestattet ist, ausführt.
Das Test -Repository , ein Verzeichnis mit einer vordefinierten, erforderlichen Struktur unter Quellensteuerung, die die verschiedenen Testvermögen enthält (Testdateien, Skripte, Testsitzungsvorlagen usw.).

OpenESTEST ist Open Source -Software, die unter der MIT -Lizenz veröffentlicht wurde.
Sofern Sie nicht ausdrücklich etwas anderes angeben, ist ein von Ihnen absichtlich für die Aufnahme in dieses Repository eingereichter Beitrag ohne zusätzliche Bedingungen wie oben lizenziert.
Weitere Informationen finden Sie im Dokument zur beitragenden Richtlinien.
Vielen Dank an BrowsStack für die Bereitstellung eines Open-Source-Kontos für Tests und Entwicklung!
Cross-Browser-Testplattform und Open Source ❤️ von Sauce Labs bereitgestellt