

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
<a name="CloudWatch_Synthetics_Canaries_Nodejs_Playwright"></a>

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

**Topics**
+ [starten](#Synthetics_Library_Nodejs_Playwright_functions)
+ [newPage](#Synthetics_Library_Nodejs_Playwright_function_newPage)
+ [close](#Synthetics_Library_Nodejs_Playwright_function_close)
+ [getDefaultLaunchOptionen](#Synthetics_Library_Nodejs_Playwright_function_getDefaultLaunchOptions)
+ [executeStep](#Synthetics_Library_Nodejs_Playwright_function_executeStep)

## starten
<a name="Synthetics_Library_Nodejs_Playwright_functions"></a>

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 [https://playwright.dev/docs/api/class-browsertype#browser-type-launch](https://playwright.dev/docs/api/class-browsertype#browser-type-launch) in der Dokumentation zu Playwright.

 **Usage** 

```
const browser = await synthetics.launch();
```

 **Argumente** 

`options` [Optionen](https://playwright.dev/docs/api/class-browsertype#browser-type-launch) (optional) ist ein konfigurierbarer Satz von Optionen für den Browser.

 **Rückgabewerte** 

Promise `<Browser>`, bei dem [Browser](https://playwright.dev/docs/api/class-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](https://playwright.dev/docs/api/class-browsertype#browser-type-launch) 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
<a name="Synthetics_Library_Nodejs_Playwright_function_newPage"></a>

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](https://playwright.dev/docs/api/class-browser) oder die [ BrowserContext](https://playwright.dev/docs/api/class-browsercontext)Playwright-Instanz. 

 **Rückgabewerte** 

Promise <Page>, wobei Page eine Playwright [Page](https://playwright.dev/docs/api/class-page)-Instance ist.

## close
<a name="Synthetics_Library_Nodejs_Playwright_function_close"></a>

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
<a name="Synthetics_Library_Nodejs_Playwright_function_getDefaultLaunchOptions"></a>

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](https://playwright.dev/docs/api/class-browsertype#browser-type-launch) zurück, die von der Synthetics–`launch`-Funktion zum Starten des Browsers verwendet werden.

## executeStep
<a name="Synthetics_Library_Nodejs_Playwright_function_executeStep"></a>

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 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.
+ `SuccessPercent`und 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](CloudWatch_Synthetics_Canaries_Samples.md) in diesem Handbuch.