E2E - End to End Tests lassen sich nicht starten

Hallo :slight_smile:

Zum Ausführen des Open oder Run Commands auf dem Cypress Container musst Du die XVFB-Nachrichten von Cypress aus dem Docker-Container an einen X11-Server weiterleiten, der auf dem Host-Rechner läuft - also den Zugriff über z.B. XHost für deinen User oder deine IP manuell freigeben. Hier findest du ein Beispiel für Mac; andere Betriebssysteme erfordern möglicherweise andere Befehle.

Ich gehe davon aus, dass du mit dem Command “psh e2e:init” begonnen hast, oder? So oder so kommt danach wahrscheinlich ein Folgefehler auf: Hier ist das direkte Verwenden von “localhost” im Cypress-Docker-Kontext schwierig, da Cypress einen eigenen Container nutzt, und somit das “localhost” auf den Cypress Container zeigt, nicht auf den “app_server” Container, der Shopware beinhaltet. Eine Möglichkeit, dies zu umgehen ist das Setzen der folgenden “psh.yaml.override” im “development” Template:

const:
  APP_URL: "http://docker.vm:8000" 

Danach einmal e2e:init, anschließend solltest du normal abeiten können.

Ganz außerhalb davon musst du auch nicht unbedingt Cypress in Docker verwenden, um unsere Tests ausführen zu können. Navigiere einfach in das Verzeichnis, in dem die Test liegen und bediene Cypress dort so wie du es kennst. Im Admin findest du die Tests bspw. unter dem Pfad “cd platform/src/Administration/Resources/app/administration/test/e2e”. Für Storefront ist der Pfad ähnlich aufgebaut, nur entsprechend für Storefront angepasst.

Ich hoffe ich konnte dir bis dahin schonmal weiterhelfen. Ansonsten, melde dich gerne! Smile

Viele Grüße,

Ramona

Kleiner EDIT : Nimm gerne die Zeile zum express server aus dem e2e:run Skript raus (dev-ops/e2e/scripts/run-docker.sh), wenn sie Probleme macht. Die wird an der Stelle aktuell eigentlich nichmal mehr gebraucht, wenn du vorher das e2e:init verwendest. Ich werde mir mal ansehen, ob die Zeile generell da generell rausgenommen werden kann.

1 „Gefällt mir“