Bibliotheksfunktionen sind für kanarische Skripte von Node.js mit Playwright verfügbar - 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.

Bibliotheksfunktionen sind für kanarische Skripte von Node.js mit Playwright verfügbar

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

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 launchin der Playwright-Dokumentation.

Usage

const browser = await synthetics.launch();

Argumente

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

Rückgabewerte

Promise<Browser>, bei dem Browser eine Playwright-Browserinstanz 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 Darstellungsbereich von 800 x 600 Pixeln. 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 });

Neue Seite

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 es newPage() auf eine der folgenden Arten:

1. Eine neue Seite in einem neuen Browserkontext erstellen:

const page = await synthetics.newPage(browser);

2. Eine neue Seite in einem bestimmten Browserkontext erstellen:

// 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, wobei Page eine Playwright Page-Instanz ist. <Page>

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 zurück, <void>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 launch Synthetics-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, dass Sie await nichts versprechen.

Argumente

  • stepNamestring (erforderlich) (boolean) — Name des Synthetics-Schritts.

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

  • stepConfigobject (optional) — Die Schrittkonfiguration überschreibt die globale Synthetics-Konfiguration für diesen Schritt.

    • continueOnStepFailureboolean (optional) — Ob das Canary-Skript weiter ausgeführt werden soll, nachdem dieser Schritt fehlschlägt.

    • screenshotOnStepStartboolean (optional) — Ob zu Beginn dieses Schritts ein Screenshot erstellt werden soll.

    • screenshotOnStepSuccessboolean (optional) — Ob ein Screenshot erstellt werden soll, wenn dieser Schritt erfolgreich ist.

    • screenshotOnStepFailureboolean (optional) — Ob ein Screenshot erstellt werden soll, wenn dieser Schritt fehlschlägt.

  • 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 von der Funktion zurückgegebenen Wert aufgelöst wird. functionToExecute Ein Beispielskript finden Sie Beispielcode für Canary-Skripte in diesem Handbuch.