Archiv der Kategorie: Ohne Schublade

Intellij: CORS-Problematik beim Debuggen umgehen

Ansatz 1: Konfig

Beim Versuch eine html-Datei im Debugmodus im Chrome zu starten, bleibt der Chrome weiß – es wird nichts angezeigt. Ein Blick in die Konsole zeigt Fehlermeldungen, wie:

Access to CSS stylesheet at 'https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css' from origin 'http://localhost:63342' has been blocked by CORS policy: Request header field x-ijt is not allowed by Access-Control-Allow-Headers in preflight response.

Diese Sicherheitseinstellung kann man in IntelliJ ausschalten:

File -> Settings -> Build, Execution, Deployment -> Debugger -> Allow unsigned requests anhaken

Ansatz 2: IntelliJ update

Am 21.6.2022 trat das Problem auf, obwohl das Häckchen aus Ansatz 1 gesetzt war.

Ein IntelliJ-Update löste das Problem schließlich.

Visual Studio Code

Grundsätzlich sind die einzelnen Bestandteile dieser IDE weniger integriert, als man das vielleicht annehmen könnte.

Die GUI von Visual Studio Code gut erklärt: hier

JavaScript-File ausführen

Neben einem Ansatz über den Terminal-Tab, node.js <DeineDatei.js>, auszuführen gibt es noch viele weiteren (wie hier in Stackoverflow zu sehen ist). Mein präfärierter folgt diesem Vorschlag:

Voraussetzung ist, dass node.js installiert wurde.

Als Current File (siehe Punkt 3 in obiger Abbildung) meint Visual Studio Code zwar wohl die gerade im Editor-Tab geöffnete .js-Datei, aber an dieser Stelle hat Visual Studio Code einen nicht-deterministischen Bug. So muss man höllisch aufpassen, ob bei einem Tab-Wechsel auch tatsächlich die aktuell geöffnete .js-Datei ausgeführt wird, oder nicht die vorherige. Um diese „Verklemmung“ zu lösen, kann man eine beliebige andere Konfiguration auswählen und anschließend wieder die Run Current File auswählen:

Ranorex-Erweiterung (Edge/Chrome) auf einem Rechner ohne Internetverbindung installieren

Dieser Artikel ist eine Dublette zu: Ranorex Chrome Plugin manuell installieren (z.B. weil der Testcomputer nicht im Internet ist) | IT Kosmopolit (it-kosmopolit.de)

Load unpacked Extension

  • Gebe in Adressleiste chrome://extension bzw. edge://extension ein.
  • Schalte den Entwicklermodus ein.
  • Klicke auf Load Unpacked (im deutsch-sprachigen Browser präziser als Entpackte Dateien laden bezeichnet). Der Browser erwartet hier so etwas einzuladen:
Versucht man mit diesem Button eine .crx (also eine gepackte(=gezippte) Extension zu laden kommt entsprechend der Fehler, dass keine Manifestdatei gefunden wurde – mit diesem Button will er eben die ungepackten Dateien laden.
  • Gehe also in C:\Program Files (x86)\Ranorex\Studio\Ranorex Chrome Extension und lade diesen Ordner hoch.
  • Tipp von Ranorex: Inkognitomodus zulassen.

Disable developer mode extensions-Warnung ausschalten

Microsoft hat offiziell klargestellt, dass das Entfernen der Warnmeldung auch für Entwickler nicht möglich ist. (Quelle)

Offizielles von Ranorex

Von Ranorex finde ich hierzu keine offizielle Mitteilung, nur drei (für meine Situation nicht hilfreiche) Hinweise unter Important notes for testing with Google Chrome/MS Edge auf User Guide. Die dort erwähnte manifest-Datei ist die C:\Program Files (x86)\Ranorex\Studio\Bin\Ranorex.Plugin.ChromeMsgHost.manifest

Ansatz Registry-Eintrag

Scheinbar ist der übliche Ansatz über die Registry schwer/unmöglich, jedenfalls hat die Befolgung dieser Anleitung (Quelle) nicht funktioniert.

Ansatz via Testautomatisierung

Es bleibt immer die Alternative, den Prompt per Ranorex Modul während des Testruns wegzuklicken.

Das Prompt verschwindet jedoch auch manchmal für eine gewisse Zeit (z.B. kann man den Edge anweisen, dieses Prompt für zwei Wochen zu ignorieren). Wer sich dann nicht wieder in zwei Wochen mit diesem leidigen Thema herumschlagen möchte, kann den Prompt immer wieder erzeugen, indem er die Ranorex-Extension deaktiviert und anschließend wieder aktiviert.