Verfügbare Bibliotheksfunktionen für Node.js-Canary-Skripte, die Playwright nutzen - Amazon CloudWatch

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verfügbare Bibliotheksfunktionen für Node.js-Canary-Skripte, die Playwright nutzen

In diesem Abschnitt werden die Bibliotheksfunktionen beschrieben, die für Canary-Skripte verfügbar sind, die die Playwright-Laufzeit von Node.js nutzen.

starten

Diese Funktion startet einen Chromium-Browser mithilfe einer Playwright-Startfunktion und gibt das Browserobjekt zurück. Sie dekomprimiert Browser-Binärdateien und startet den Chromium-Browser mithilfe von Standardoptionen, die für einen Headless-Browser geeignet sind. Weitere Informationen zu dieser launch-Funktion finden Sie unter launch in der Dokumentation zu Playwright.

Usage

const browser = await synthetics.launch();

Argumente

options Optionen (optional) ist ein konfigurierbarer Satz von Optionen für den Browser.

Rückgabewerte

Promise <Browser>, bei dem Browser eine Playwright-Browserinstance ist.

Wenn diese Funktion erneut aufgerufen wird, wird ein zuvor geöffneter Browser geschlossen, bevor ein neuer Browser gestartet wird. Sie können die von CloudWatch Synthetics verwendeten Startparameter überschreiben und beim Starten des Browsers zusätzliche Parameter übergeben. Mit dem folgenden Codeausschnitt wird beispielsweise ein Browser mit Standardargumenten und einem standardmäßigen ausführbaren Pfad gestartet, jedoch mit einem Ansichtsfenster von 800 x 600 Pixel. Weitere Informationen finden Sie unter Playwright-Startoptionen in der Playwright-Dokumentation.

const browser = await synthetics.launch({ defaultViewport: { "deviceScaleFactor": 1, "width": 800, "height": 600 }});

Sie können auch Chromium-Flags hinzufügen oder überschreiben, die standardmäßig an den Browser weitergegeben werden. Sie können beispielsweise die Websicherheit deaktivieren, indem Sie den Argumenten in den CloudWatch Synthetics-Startparametern ein --disable-web-security Flag hinzufügen:

// This function adds the --disable-web-security flag to the launch parameters const defaultOptions = await synthetics.getDefaultLaunchOptions(); const launchArgs = [...defaultOptions.args, '--disable-web-security']; const browser = await synthetics.launch({ args: launchArgs });

newPage

Die newPage()-Funktion erstellt eine neue Playwright-Seite und gibt sie zurück. Synthetics richtet automatisch eine DevTools Chrome-Protokollverbindung (CDP) ein, um Netzwerkaufnahmen für die Generierung von HTTP-Archiven (HAR) zu ermöglichen.

Usage

Verwenden Sie newPage() auf eine der folgenden Weisen:

1. Erstellen einer neuen Seite in einem neuen Browserkontext:

const page = await synthetics.newPage(browser);

2. Erstellen einer neuen Seite in einem bestimmten Browserkontext:

// Create a new browser context const browserContext = await browser.newContext(); // Create a new page in the specified browser context const page = await synthetics.newPage(browserContext)

Argumente

Akzeptiert entweder die Playwright Browser-Instanz oder die BrowserContextPlaywright-Instanz.

Rückgabewerte

Promise <Page>, wobei Page eine Playwright Page-Instance ist.

close

Schließt den aktuell geöffneten Browser.

Usage

await synthetics.close();

Es wird empfohlen, den Browser in einem finally-Block Ihres Skripts zu schließen.

Argumente

Keine

Rückgabewerte

Gibt Promise<void> zurück, das von der Synthetics-Startfunktion zum Starten des Browsers verwendet wird.

getDefaultLaunchOptionen

Die getDefaultLaunchOptions() Funktion gibt die Browser-Startoptionen zurück, die von CloudWatch Synthetics verwendet werden.

Usage

const defaultOptions = await synthetics.getDefaultLaunchOptions();

Argumente

Keine

Rückgabewerte

Gibt die Playwright-Startoptionen zurück, die von der Synthetics–launch-Funktion zum Starten des Browsers verwendet werden.

executeStep

Die executeStep-Funktion wird verwendet, um einen Schritt in einem Synthetics-Skript auszuführen. In CloudWatch Synthetics ist ein Synthetics-Schritt eine Möglichkeit, Ihr Canary-Skript in eine Reihe klar definierter Aktionen zu unterteilen, sodass Sie verschiedene Teile Ihrer Anwendungsreise getrennt überwachen können. Für jeden Schritt geht CloudWatch Synthetics wie folgt vor:

  • Zeichnet automatisch einen Screenshot auf, bevor ein Schritt beginnt und nachdem ein Schritt abgeschlossen ist. Sie können auch Screenshots innerhalb eines Schritts aufnehmen. Screenshots werden standardmäßig aufgenommen, können aber mithilfe von Synthetics-Konfigurationen (Todo: Link) deaktiviert werden.

  • Für jeden Canary-Run wird ein Bericht mit einer Zusammenfassung der Ausführungsdetails wie Dauer eines Schritts pass oder fail Status, Quell- und Zielseite URLs, zugehörige Screenshots usw. erstellt. Wenn Sie in der CloudWatch Synthetics-Konsole einen Lauf auswählen, können Sie die Ausführungsdetails der einzelnen Schritte auf der Registerkarte Schritt anzeigen.

  • SuccessPercentund für jeden Schritt werden Duration CloudWatch Metriken ausgegeben, sodass Benutzer die Verfügbarkeit und Latenz jedes Schritts überwachen können.

Usage

await synthetics.executeStep("mystepname", async function () { await page.goto(url, { waitUntil: 'load', timeout: 30000 }); }
Anmerkung

Die Schritte sollten nacheinander ausgeführt werden. Stellen Sie sicher, await für Promises zu verwenden.

Argumente

  • stepName-Zeichenfolge (erforderlich) (Boolean) – Name des Synthetics-Schritts.

  • functionToExecute asynchrone Funktion (erforderlich) – Die Funktion, die Synthetics ausführen soll. Diese Funktion sollte die Logik für den Schritt enthalten.

  • stepConfig Objekt (optional) – die Schrittkonfiguration überschreibt die globale Synthetics-Konfiguration für diese Schritt.

    • continueOnStepFailure Boolean (optional) – Gibt an, ob das Canary-Skript weiter ausgeführt werden soll, nachdem dieser Schritt fehlschlägt.

    • screenshotOnStepStart Boolean (optional) – Gibt an, ob zu Beginn dieses Schritts ein Screenshot erstellt werden soll.

    • screenshotOnStepSuccess Boolean (optional) – Gibt an, ob ein Screenshot erstellt werden soll, wenn dieser Schritt erfolgreich ist.

    • screenshotOnStepFailure Boolean (optional) – Gibt an, ob ein Screenshot erstellt werden soll, nachdem ein Schritt fehlgeschlagen ist.

  • page – Seitenobjekt von Playwright (optional)

    Ein Playwright-Seitenobjekt. Synthetics verwendet dieses Seitenobjekt, um Screenshots zu erfassen und URLs. Standardmäßig verwendet Synthetics die Playwright-Seite, die erstellt wurde, wenn die synthetics.newPage() Funktion aufgerufen wird, zum Erfassen von Seitendetails wie Screenshots und. URLs

Rückgabewerte

Gibt ein Promise zurück, das mit dem Wert aufgelöst wird, der von der functionToExecute-Funktion zurückgegeben wird. Ein Beispielskript finden Sie unter Beispielcode für Canary-Skripte in diesem Handbuch.