Freigeben über


Verwenden von Optionen, die in Servicepaketen mit der Vorschau von Microsoft Playwright-Tests verfügbar sind

In diesem Artikel erfahren Sie, wie Sie die Optionen verwenden, die in der Datei playwright.service.config.ts verfügbar sind, die für Sie generiert wurde. Wenn diese Datei nicht in Ihrem Code vorhanden ist, folgen Sie Schnellstart: Ausführen von End-to-End-Tests im großen Stil mithilfe der Vorschauversion von Microsoft Playwright Testing

In diesem Artikel erfahren Sie, wie Sie die in der .runsettings Datei verfügbaren Optionen verwenden. Wenn diese Datei nicht in Ihrem Code vorhanden ist, folgen Sie Schnellstart: Ausführen von End-to-End-Tests im großen Stil mithilfe der Vorschauversion von Microsoft Playwright Testing

Wichtig

Microsoft Playwright Testing befindet sich derzeit in der Vorschauversion. Die zusätzlichen Nutzungsbestimmungen für Microsoft Azure-Vorschauen enthalten rechtliche Bedingungen. Sie gelten für diejenigen Azure-Features, die sich in der Beta- oder Vorschauversion befinden oder aber anderweitig noch nicht zur allgemeinen Verfügbarkeit freigegeben sind.

Voraussetzungen

Im Folgenden finden Sie eine Version der Datei playwright.service.config.ts mit allen verfügbaren Optionen:

import { getServiceConfig, ServiceOS } from "@azure/microsoft-playwright-testing";
import { defineConfig } from "@playwright/test";
import { AzureCliCredential } from "@azure/identity";
import config from "./playwright.config";

export default defineConfig(
  config,
  getServiceConfig(config, {
    serviceAuthType:'ACCESS_TOKEN' // Use this option when you want to authenticate using access tokens. This mode of auth should be enabled for the workspace.
    os: ServiceOS.WINDOWS, // Select the operating system where you want to run tests.
    runId: new Date().toISOString(), // Set a unique ID for every test run to distinguish them in the service portal.
    credential: new AzureCliCredential(), // Select the authentication method you want to use with Entra.
    useCloudHostedBrowsers: true, // Select if you want to use cloud-hosted browsers to run your Playwright tests.
    exposeNetwork: '<loopback>', // Use this option to connect to local resources from your Playwright test code without having to configure additional firewall settings.
    timeout: 30000 // Set the timeout for your tests.
  }),
  {
    reporter: [
      ["list"],
      [
        "@azure/microsoft-playwright-testing/reporter",
        {
          enableGitHubSummary: true, // Enable/disable GitHub summary in GitHub Actions workflow.
        },
      ],
    ],
  },
);

Einstellungen in der Datei playwright.service.config.ts

  • serviceAuthType:

    • Beschreibung: Mit dieser Einstellung können Sie die Authentifizierungsmethode auswählen, die Sie für die Testausführung verwenden möchten.
    • Verfügbare Optionen:
      • ACCESS_TOKEN zur Verwendung von Zugriffstoken. Sie müssen die Authentifizierung mithilfe von Zugriffstoken aktivieren, wenn Sie diese Option verwenden möchten. Weitere Informationen finden Sie unter Verwalten der Authentifizierung.
      • ENTRA_ID zur Verwendung von Microsoft Entra ID für die Authentifizierung. Dies ist der Standardmodus.
    • Standardwert: ENTRA_ID
    • Beispiel:
      serviceAuthType:'ENTRA_ID'
      
  • os:

    • Beschreibung: Mit dieser Einstellung können Sie das Betriebssystem auswählen, unter dem die Browser, die Playwright-Tests ausführen, gehostet werden.
    • Verfügbare Optionen:
      • ServiceOS.WINDOWS für das Windows-Betriebssystem.
      • ServiceOS.LINUX für das Linux-Betriebssystem.
    • Standardwert: ServiceOS.LINUX
    • Beispiel:
      os: ServiceOS.WINDOWS
      
  • runId:

    • Beschreibung: Mit dieser Einstellung können Sie eine eindeutige ID für jede Testausführung festlegen, um sie im Dienstportal zu unterscheiden. Wenn Sie dieselbe runId für mehrere Testausführungen verwenden, tritt ein Fehler auf. Behalten Sie dies beim Sharding für alle Shards bei.
    • Beispiel:
      runId: new Date().toISOString()
      
  • credential:

    • Beschreibung: Mit dieser Einstellung können Sie die Authentifizierungsmethode auswählen, die Sie für Microsoft Entra ID verwenden möchten.
    • Beispiel:
      credential: new AzureCliCredential()
      
  • useCloudHostedBrowsers

    • Beschreibung: Mit dieser Einstellung können Sie auswählen, ob in der Cloud gehostete Browser oder die Browser auf Ihrem Clientcomputer zum Ausführen Ihrer Playwright-Tests verwendet werden sollen. Wenn Sie diese Option deaktivieren, werden Ihre Tests auf den Browsern Ihres Clientcomputers anstelle von in der Cloud gehosteten Browsern ausgeführt, und es entstehen keine Gebühren.
    • Standardwert: true
    • Beispiel:
      useCloudHostedBrowsers: true
      
  • exposeNetwork

    • Beschreibung: Mit dieser Einstellung können Sie über den Playwright-Testcode eine Verbindung mit lokalen Ressourcen herstellen, ohne weitere Firewalleinstellungen konfigurieren zu müssen. Weitere Informationen finden Sie unter Ausführen von Tests für lokale Apps.
    • Beispiel:
      exposeNetwork: '<loopback>'
      
  • timeout

    • Beschreibung: Mit dieser Einstellung können Sie ein Zeitlimit für Ihre Tests festlegen, die eine Verbindung mit den in der Cloud gehosteten Browsern herstellen.
    • Beispiel:
      timeout: 30000,
      
  • reporter

    • Beschreibung: Die Datei playwright.service.config.ts erweitert die Playwright-Konfigurationsdatei Ihres Setups. Diese Option setzt die vorhandenen Reporter außer Kraft und legt den Microsoft Playwright Testing-Reporter fest. Sie können diese Liste erweitern oder ändern, um die Reporter einzuschließen, die Sie verwenden möchten. Wenn Sie @azure/microsoft-playwright-testing/reporter hinzufügen, werden Ihnen die Microsoft Playwright Testing-Berichte in Rechnung gestellt.
    • Standardwert: ["@azure/microsoft-playwright-testing/reporter"]
    • Beispiel:
      reporter: [
      ["list"],
      ["@azure/microsoft-playwright-testing/reporter"],
      
  • enableGitHubSummary:

    • Beschreibung: Mit dieser Einstellung können Sie den Microsoft Playwright Testing-Reporter konfigurieren. Sie können auswählen, ob die Testausführungszusammenfassung in die GitHub-Zusammenfassung bei der Ausführung in GitHub Actions einbezogen werden soll.
    • Standardwert: true
    • Beispiel:
      reporter: [
        ["list"],
        [
          "@azure/microsoft-playwright-testing/reporter",
          {
            enableGitHubSummary: true,
          },
        ],
      ]
    

Im Folgenden finden Sie eine Version der Datei .runsettings mit allen verfügbaren Optionen:

<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
    <TestRunParameters>
        <!-- Use this option when you want to authenticate using access tokens. This mode of auth should be enabled for the workspace. -->
         <Parameter name="ServiceAuthType" value="EntraId" />
        <!-- Select the operating system where you want to run tests. -->
        <Parameter name="Os" value="linux" />
        <!-- Set a unique ID for every test run to distinguish them in the service portal.-->
        <Parameter name="RunId" value="sample-run-id1" />
        <!--Select if you want to use cloud-hosted browsers to run your Playwright tests.-->
        <Parameter name="UseCloudHostedBrowsers" value="true" />
        <!--Use this option to connect to local resources from your Playwright test code without having to configure additional firewall-->
        <Parameter name="ExposeNetwork" value="loopback" />
        <!--Select the authentication method you want to use with Entra-->
        <Parameter name="AzureTokenCredentialType" value="DefaultAzureCredential" />
        <!--Enable/disable GitHub summary in GitHub Actions workflow.-->
        <Parameter name="EnableGitHubSummary" value="false" />
    </TestRunParameters>
  <!-- NUnit adapter -->  
  <NUnit>
    <!-- Adjust parallel workers, parallel worker would also be bound by number of unit test files -->
    <NumberOfTestWorkers>10</NumberOfTestWorkers>
  </NUnit>
  <!-- General run configuration -->
  <RunConfiguration>
    <EnvironmentVariables>
      <!-- For debugging selectors, it's recommend to set the following environment variable -->
      <DEBUG>pw:api</DEBUG>
    </EnvironmentVariables>
  </RunConfiguration>
  <!-- Playwright -->  
  <Playwright>
    <BrowserName>chromium</BrowserName>
    <!--Set the timeout for your tests.-->
    <ExpectTimeout>5000</ExpectTimeout>
    <LaunchOptions>
      <Headless>false</Headless>
      <!--Channel>msedge</Channel-->
    </LaunchOptions>
  </Playwright>
    <LoggerRunSettings>
        <Loggers>
            <!--microsoft playwright testing service logger for reporting -->
            <Logger friendlyName="microsoft-playwright-testing" enabled="true" />
            <!--could enable any logger additionally -->
            <Logger friendlyName="trx" enabled="false" />
        </Loggers>
    </LoggerRunSettings>
</RunSettings>

Konfigurationsoptionen in der Datei .runsettings

  • serviceAuthType:

    • Beschreibung: Mit dieser Einstellung können Sie die Authentifizierungsmethode auswählen, die Sie für die Testausführung verwenden möchten.
    • Verfügbare Optionen:
      • AccessToken zur Verwendung von Zugriffstoken. Sie müssen die Authentifizierung mithilfe von Zugriffstoken aktivieren, wenn Sie diese Option verwenden möchten. Weitere Informationen finden Sie unter Verwalten der Authentifizierung.
      • EntraId zur Verwendung von Microsoft Entra ID für die Authentifizierung. Dies ist der Standardmodus.
    • Standardwert: EntraId
    • Beispiel:
      <Parameter name="ServiceAuthType" value="EntraId" />
      
  • os:

    • Beschreibung: Mit dieser Einstellung können Sie das Betriebssystem auswählen, unter dem die Browser, die Playwright-Tests ausführen, gehostet werden.
    • Verfügbare Optionen:
      • "Windows" für Windows-Betriebssystem.
      • "linux" für Linux OS.
    • Standardwert: "linux"
    • Beispiel:
      <Parameter name="Os" value="linux" />
      
  • RunId:

    • Beschreibung: Mit dieser Einstellung können Sie eine eindeutige ID für jede Testausführung festlegen, um sie im Dienstportal zu unterscheiden. Wenn Sie dieselbe runId für mehrere Testausführungen verwenden, tritt ein Fehler auf. Wenn Sie sie nicht festlegen, generiert das Dienstpaket jedes Mal, wenn Sie eine Testausführung auslösen, eine eindeutige ID. Behalten Sie dies beim Sharding für alle Shards bei.
    • Beispiel:
      <Parameter name="RunId" value="sample-run-id1" />
      
  • AzureTokenCredentialType:

    • Beschreibung: Mit dieser Einstellung können Sie die Authentifizierungsmethode auswählen, die Sie für Microsoft Entra ID verwenden möchten.
    • Beispiel:
      <Parameter name="AzureTokenCredentialType" value="DefaultAzureCredential" />
      
  • UseCloudHostedBrowsers

    • Beschreibung: Mit dieser Einstellung können Sie auswählen, ob in der Cloud gehostete Browser oder die Browser auf Ihrem Clientcomputer zum Ausführen Ihrer Playwright-Tests verwendet werden sollen. Wenn Sie diese Option deaktivieren, werden Ihre Tests auf den Browsern Ihres Clientcomputers anstelle von in der Cloud gehosteten Browsern ausgeführt, und es entstehen keine Gebühren.
    • Standardwert: true
    • Beispiel:
      <Parameter name="UseCloudHostedBrowsers" value="true" />
      
  • ExposeNetwork

    • Beschreibung: Mit dieser Einstellung können Sie über den Playwright-Testcode eine Verbindung mit lokalen Ressourcen herstellen, ohne weitere Firewalleinstellungen konfigurieren zu müssen. Weitere Informationen finden Sie unter Ausführen von Tests für lokale Apps.
    • Beispiel:
      <Parameter name="ExposeNetwork" value="loopback" />
      
  • reporter

    • Beschreibung: Sie können Ihre Testergebnisse und Artefakte mithilfe von microsoft-playwright-testing Logger im Dienst veröffentlichen. Sie können die Berichterstellung deaktivieren, indem Sie dies von Ihrem .runsettings entfernen oder auf "falsch" festlegen.
    • Standardwert: true
    • Beispiel:
      <Logger friendlyName="microsoft-playwright-testing" enabled="true" />
      
  • EnableGitHubSummary:

    • Beschreibung: Mit dieser Einstellung können Sie den Microsoft Playwright Testing-Reporter konfigurieren. Sie können auswählen, ob die Testausführungszusammenfassung in die GitHub-Zusammenfassung bei der Ausführung in GitHub Actions einbezogen werden soll.
    • Standardwert: true
    • Beispiel:
      <Parameter name="EnableGitHubSummary" value="false" />