2

Ich möchte ein Kopflos Selen "Skript" in Java in einem CI-Job, unabhängig von Host (und Browser) gebaut laufen.Wie Headless Selen-Skripte, unabhängig Host und Browser

Ich kann ein Jar erstellen und das "Skript" auf einem Terminal ausführen, ich muss nur vorsichtig genug sein, um den richtigen Treiber anzuzeigen und zu konfigurieren, abhängig vom Betriebssystem und dem Browser des Hosts, auf dem ich das Skript ausführe . Aber auf CI-Hosts kontrolliere ich Host und Browser nicht unbedingt, wenn sie überhaupt verfügbar sind.

Also ich möchte die Ausführung des Skripts unabhängig von dem Host und Browser, wo das Skript ausgeführt wird. Es könnte auf einer Slave-Instanz von Jenkins, Travis, Gitlab CI usw. ausgeführt werden.

Es gibt ein paar Fragen, die zuvor gemacht wurden, die sehr auf eine bestimmte Host- und Browser-Kombination ausgerichtet sind. Ich könnte den Host nicht in Frage stellen und den Browser beispielsweise über einen Container zur Verfügung stellen.

Wenn der Browser als Containerbild verfügbar war, konnte ich das Skript gegen verschiedene Browser ausführen, jeder mit seinem eigenen Image. Und ich hätte die richtigen Treiber bereits für diese Browser-Instanzen vorbereitet.

Wäre das machbar und was ist der einfachste Weg, wie ich das richtig machen kann?

Antwort

0

Dies ist machbar. Wie in "How to run Selenium scripts in multiple browsers from Jenkins " gezeigt, kann man ein Docker-Bild mit einem Browser auslösen und dann eine Remote WebDriver verwenden, um eine Verbindung zu diesem Browser herzustellen.

Selenium grid, auch auf eine Antwort auf diese Frage verwiesen wird, ist eine praktikable Option zur gleichen Zeit mehrere Knoten eines beliebigen Browsers zu erhöhen, nützlich für gleichzeitige Szenarien, die nicht der besondere Fall für diese Frage ist.

Verwandte Themen