Compartilhar via


Usar opções disponíveis no pacote de serviço com a versão prévia do Microsoft Playwright Testing

Este artigo mostra como usar as opções disponíveis no arquivo playwright.service.config.ts que foi gerado para você. Se você não tiver esse arquivo em seu código, siga o Início Rápido: Executar testes de ponta a ponta em escala com o Microsoft Playwright Testing Preview

Este artigo mostra como usar as opções disponíveis no arquivo .runsettings. Se você não tiver esse arquivo em seu código, siga o Início Rápido: Executar testes de ponta a ponta em escala com o Microsoft Playwright Testing Preview

Importante

O Microsoft Playwright Testing está atualmente em pré-visualização. Para os termos legais que se aplicam aos recursos do Azure que estão em versão beta, versão prévia ou que, de outra forma, ainda não foram lançados em disponibilidade geral, confira os Termos de Uso Complementares para Versões Prévias do Microsoft Azure.

Pré-requisitos

Aqui está a versão do arquivo playwright.service.config.ts com todas as opções disponíveis:

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.
        },
      ],
    ],
  },
);

Configurações no arquivo playwright.service.config.ts

  • serviceAuthType:

    • Descrição: essa configuração permite que você escolha o método de autenticação que deseja usar para a execução do teste.
    • Opções disponíveis:
      • ACCESS_TOKEN para usar tokens de acesso. Você precisa habilitar a autenticação usando tokens de acesso se quiser usar essa opção, consulte gerenciar a autenticação.
      • ENTRA_ID para usar a ID do Microsoft Entra para autenticação. Esse é o modo padrão.
    • Valor padrão: ENTRA_ID
    • Exemplo:
      serviceAuthType:'ENTRA_ID'
      
  • os:

    • Descrição: essa configuração permite que você escolha o sistema operacional em que os navegadores que executam testes do Dramaturgo estão hospedados.
    • Opções disponíveis:
      • ServiceOS.WINDOWS para sistema operacional Windows 10.
      • ServiceOS.LINUX para sistema operacional Linux.
    • Valor padrão: ServiceOS.LINUX
    • Exemplo:
      os: ServiceOS.WINDOWS
      
  • runId:

    • Descrição: essa configuração permite que você defina uma ID exclusiva para cada execução de teste para distingui-las no portal de serviço. Usar a mesma runId para várias execuções de teste resulta em erro. Para a fragmentação, mantenha essa mesma em todos os fragmentos.
    • Exemplo:
      runId: new Date().toISOString()
      
  • credential:

    • Descrição: essa configuração permite que você selecione o método de autenticação que deseja usar com a ID do Microsoft Entra.
    • Exemplo:
      credential: new AzureCliCredential()
      
  • useCloudHostedBrowsers

    • Descrição: Essa configuração permite que você escolha se deseja usar navegadores hospedados na nuvem ou os navegadores na sua máquina cliente para executar seus testes do Playwright. Se você desabilitar essa opção, seus testes serão executados nos navegadores da máquina cliente em vez de navegadores hospedados na nuvem, e você não incorrerá em nenhuma cobrança.
    • Valor padrão: verdadeiro
    • Exemplo:
      useCloudHostedBrowsers: true
      
  • exposeNetwork

    • Descrição: essa configuração permite que você se conecte aos recursos locais do código de teste do Dramaturgo sem precisar definir outras configurações de firewall. Para saber mais, confira como testar aplicativos locais
    • Exemplo:
      exposeNetwork: '<loopback>'
      
  • timeout

    • Descrição: essa configuração permite que você defina o tempo limite para seus testes que se conectam aos navegadores hospedados na nuvem.
    • Exemplo:
      timeout: 30000,
      
  • reporter

    • Descrição: o arquivo playwright.service.config.ts estende o arquivo de configuração do dramaturgo de sua instalação. Essa opção substitui os repórteres existentes e define o repórter do Microsoft Playwright Testing. Você pode adicionar ou modificar essa lista para incluir os repórteres que deseja usar. Você será cobrado pelos relatórios do Microsoft Playwright Testing se adicionar @azure/microsoft-playwright-testing/reporter.
    • Valor padrão: ["@azure/microsoft-playwright-testing/reporter"]
    • Exemplo:
      reporter: [
      ["list"],
      ["@azure/microsoft-playwright-testing/reporter"],
      
  • enableGitHubSummary:

    • Descrição: essa configuração permite que você configure o repórter do serviço Microsoft Playwright Testing. Você pode escolher se deseja incluir o resumo da execução de teste no resumo do GitHub ao executar no GitHub Actions.
    • Valor padrão: verdadeiro
    • Exemplo:
      reporter: [
        ["list"],
        [
          "@azure/microsoft-playwright-testing/reporter",
          {
            enableGitHubSummary: true,
          },
        ],
      ]
    

Aqui está a versão do arquivo .runsettings com todas as opções disponíveis:

<?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>

Opções de configuração no arquivo .runsettings

  • serviceAuthType:

    • Descrição: essa configuração permite que você escolha o método de autenticação que deseja usar para a execução do teste.
    • Opções disponíveis:
      • AccessToken para usar tokens de acesso. Você precisa habilitar a autenticação usando tokens de acesso se quiser usar essa opção, consulte gerenciar a autenticação.
      • EntraId para usar a ID do Microsoft Entra para autenticação. Esse é o modo padrão.
    • Valor padrão: EntraId
    • Exemplo:
      <Parameter name="ServiceAuthType" value="EntraId" />
      
  • os:

    • Descrição: essa configuração permite que você escolha o sistema operacional em que os navegadores que executam testes do Dramaturgo estão hospedados.
    • Opções disponíveis:
      • "windows" para o SO Windows.
      • "linux" para o SO Linux.
    • Valor padrão: "linux"
    • Exemplo:
      <Parameter name="Os" value="linux" />
      
  • RunId:

    • Descrição: essa configuração permite que você defina uma ID exclusiva para cada execução de teste para distingui-las no portal de serviço. Usar a mesma runId para várias execuções de teste resulta em erro. Se você não defini-la, o pacote de serviço gerará uma ID exclusiva sempre que você disparar uma execução de teste. Para a fragmentação, mantenha essa mesma em todos os fragmentos.
    • Exemplo:
      <Parameter name="RunId" value="sample-run-id1" />
      
  • AzureTokenCredentialType:

    • Descrição: essa configuração permite que você selecione o método de autenticação que deseja usar com a ID do Microsoft Entra.
    • Exemplo:
      <Parameter name="AzureTokenCredentialType" value="DefaultAzureCredential" />
      
  • UseCloudHostedBrowsers

    • Descrição: Essa configuração permite que você escolha se deseja usar navegadores hospedados na nuvem ou os navegadores na sua máquina cliente para executar seus testes do Playwright. Se você desabilitar essa opção, seus testes serão executados nos navegadores da máquina cliente em vez de navegadores hospedados na nuvem, e você não incorrerá em nenhuma cobrança.
    • Valor padrão: verdadeiro
    • Exemplo:
      <Parameter name="UseCloudHostedBrowsers" value="true" />
      
  • ExposeNetwork

    • Descrição: essa configuração permite que você se conecte aos recursos locais do código de teste do Dramaturgo sem precisar definir outras configurações de firewall. Para saber mais, confira como testar aplicativos locais
    • Exemplo:
      <Parameter name="ExposeNetwork" value="loopback" />
      
  • reporter

    • Descrição: Você pode publicar seus resultados de teste e artefatos para o serviço usando agente microsoft-playwright-testing. Você pode desabilitar relatórios removendo isso do seu .runsettings ou configurando para falso.
    • Valor padrão: verdadeiro
    • Exemplo:
      <Logger friendlyName="microsoft-playwright-testing" enabled="true" />
      
  • EnableGitHubSummary:

    • Descrição: essa configuração permite que você configure o repórter do serviço Microsoft Playwright Testing. Você pode escolher se deseja incluir o resumo da execução de teste no resumo do GitHub ao executar no GitHub Actions.
    • Valor padrão: verdadeiro
    • Exemplo:
      <Parameter name="EnableGitHubSummary" value="false" />