다음을 통해 공유


Microsoft Playwright Testing 미리 보기와 함께 서비스 패키지에서 사용할 수 있는 옵션 사용

이 문서에서는 생성된 playwright.service.config.ts 파일에서 사용 가능한 옵션을 사용하는 방법을 보여줍니다. 코드에 이 파일이 없는 경우 빠른 시작을 따릅니다 . Microsoft Playwright Testing Preview를 사용하여 대규모로 엔드투엔드 테스트 실행

이 문서에서는 파일에서 .runsettings 사용할 수 있는 옵션을 사용하는 방법을 보여줍니다. 코드에 이 파일이 없는 경우 빠른 시작을 따릅니다 . Microsoft Playwright Testing Preview를 사용하여 대규모로 엔드투엔드 테스트 실행

Important

Microsoft Playwright Testing은 현재 미리 보기 상태입니다. 베타, 미리 보기 또는 아직 일반 공급으로 릴리스되지 않은 Azure 기능에 적용되는 약관은 Microsoft Azure 미리 보기에 대한 보충 사용 약관을 참조하세요.

필수 조건

사용 가능한 모든 옵션이 포함된 playwright.service.config.ts 파일 버전은 다음과 같습니다.

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

playwright.service.config.ts 파일의 설정

  • serviceAuthType:

    • 설명: 이 설정을 사용하면 테스트 실행에 사용할 인증 방법을 선택할 수 있습니다.
    • 사용 가능한 옵션:
      • ACCESS_TOKEN - 액세스 토큰을 사용합니다. 이 옵션을 사용하려면 액세스 토큰을 사용한 인증을 활성화해야 합니다. 인증 관리를 참조하세요.
      • ENTRA_ID - 인증에 Microsoft Entra ID를 사용합니다. 이것은 기본 모드입니다.
    • 기본값: ENTRA_ID
    • 예:
      serviceAuthType:'ENTRA_ID'
      
  • os:

    • 설명: 이 설정을 사용하면 Playwright 테스트를 실행하는 브라우저가 호스트되는 운영 체제를 선택할 수 있습니다.
    • 사용 가능한 옵션:
      • Windows OS의 경우 ServiceOS.WINDOWS
      • Linux OS의 경우 ServiceOS.LINUX
    • 기본값: ServiceOS.LINUX
    • 예:
      os: ServiceOS.WINDOWS
      
  • runId:

    • 설명: 이 설정을 사용하면 서비스 포털에서 구별 가능하도록 모든 테스트 실행에 대해 고유 ID를 설정할 수 있습니다. 여러 테스트 실행에 동일한 runId를 사용하면 오류가 발생합니다. 분할의 경우 모든 분할된 데이터베이스에서 동일하게 유지합니다.
    • 예:
      runId: new Date().toISOString()
      
  • credential:

    • 설명: 이 설정을 사용하면 Microsoft Entra ID에서 사용할 인증 방법을 선택할 수 있습니다.
    • 예:
      credential: new AzureCliCredential()
      
  • useCloudHostedBrowsers

    • 설명: 이 설정을 사용하면 Playwright 테스트를 실행하는 데 클라우드 호스팅 브라우저를 사용할지 클라이언트 머신의 브라우저를 사용할지 선택할 수 있습니다. 이 옵션을 비활성화하면 테스트는 클라우드 호스팅 브라우저가 아닌 클라이언트 머신의 브라우저에서 실행되며, 어떠한 요금도 발생하지 않습니다.
    • 기본값: true
    • 예:
      useCloudHostedBrowsers: true
      
  • exposeNetwork

    • 설명: 이 설정을 사용하면 다른 방화벽 설정을 구성하지 않고도 Playwright 테스트 코드에서 로컬 리소스에 연결할 수 있습니다. 자세한 내용은 로컬 애플리케이션을 테스트하는 방법을 참조하세요.
    • 예:
      exposeNetwork: '<loopback>'
      
  • timeout

    • 설명: 이 설정을 사용하면 클라우드 호스팅 브라우저에 연결하는 테스트에 대한 시간 제한을 설정할 수 있습니다.
    • 예:
      timeout: 30000,
      
  • reporter

    • 설명: playwright.service.config.ts 파일은 설정의 Playwright 구성 파일을 확장합니다. 이 옵션은 기존 보고자를 재정의하고 Microsoft Playwright Testing 보고자를 설정합니다. 사용하려는 보고자를 포함하도록 이 목록을 추가하거나 수정할 수 있습니다. @azure/microsoft-playwright-testing/reporter를 추가하면 Microsoft Playwright Testing 보고에 대한 요금이 청구됩니다.
    • 기본값: ["@azure/microsoft-playwright-testing/reporter"]
    • 예:
      reporter: [
      ["list"],
      ["@azure/microsoft-playwright-testing/reporter"],
      
  • enableGitHubSummary:

    • 설명: 이 설정을 사용하면 Microsoft Playwright Testing 서비스 보고자를 구성할 수 있습니다. GitHub Actions에서 실행할 때 GitHub 요약에 테스트 실행 요약을 포함할지 여부를 선택할 수 있습니다.
    • 기본값: true
    • 예제:
      reporter: [
        ["list"],
        [
          "@azure/microsoft-playwright-testing/reporter",
          {
            enableGitHubSummary: true,
          },
        ],
      ]
    

사용 가능한 모든 옵션이 포함된 .runsettings 파일 버전은 다음과 같습니다.

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

파일의 .runsettings 구성 옵션

  • serviceAuthType:

    • 설명: 이 설정을 사용하면 테스트 실행에 사용할 인증 방법을 선택할 수 있습니다.
    • 사용 가능한 옵션:
      • AccessToken - 액세스 토큰을 사용합니다. 이 옵션을 사용하려면 액세스 토큰을 사용한 인증을 활성화해야 합니다. 인증 관리를 참조하세요.
      • EntraId - 인증에 Microsoft Entra ID를 사용합니다. 이것은 기본 모드입니다.
    • 기본값: EntraId
    • 예:
      <Parameter name="ServiceAuthType" value="EntraId" />
      
  • os:

    • 설명: 이 설정을 사용하면 Playwright 테스트를 실행하는 브라우저가 호스트되는 운영 체제를 선택할 수 있습니다.
    • 사용 가능한 옵션:
      • Windows OS용 "windows"입니다.
      • Linux OS용 "linux".
    • 기본값: "linux"
    • 예:
      <Parameter name="Os" value="linux" />
      
  • RunId:

    • 설명: 이 설정을 사용하면 서비스 포털에서 구별 가능하도록 모든 테스트 실행에 대해 고유 ID를 설정할 수 있습니다. 여러 테스트 실행에 동일한 runId를 사용하면 오류가 발생합니다. 설정하지 않으면 테스트 실행을 트리거할 때마다 서비스 패키지에서 고유 ID를 생성합니다. 분할의 경우 모든 분할된 데이터베이스에서 동일하게 유지합니다.
    • 예:
      <Parameter name="RunId" value="sample-run-id1" />
      
  • AzureTokenCredentialType:

    • 설명: 이 설정을 사용하면 Microsoft Entra ID에서 사용할 인증 방법을 선택할 수 있습니다.
    • 예:
      <Parameter name="AzureTokenCredentialType" value="DefaultAzureCredential" />
      
  • UseCloudHostedBrowsers

    • 설명: 이 설정을 사용하면 Playwright 테스트를 실행하는 데 클라우드 호스팅 브라우저를 사용할지 클라이언트 머신의 브라우저를 사용할지 선택할 수 있습니다. 이 옵션을 비활성화하면 테스트는 클라우드 호스팅 브라우저가 아닌 클라이언트 머신의 브라우저에서 실행되며, 어떠한 요금도 발생하지 않습니다.
    • 기본값: true
    • 예:
      <Parameter name="UseCloudHostedBrowsers" value="true" />
      
  • ExposeNetwork

    • 설명: 이 설정을 사용하면 다른 방화벽 설정을 구성하지 않고도 Playwright 테스트 코드에서 로컬 리소스에 연결할 수 있습니다. 자세한 내용은 로컬 애플리케이션을 테스트하는 방법을 참조하세요.
    • 예:
      <Parameter name="ExposeNetwork" value="loopback" />
      
  • reporter

    • 설명: 로거를 사용하여 microsoft-playwright-testing 테스트 결과 및 아티팩트 서비스를 게시할 수 있습니다. 이를 사용자로부터 .runsettings 제거하거나 false로 설정하여 보고를 사용하지 않도록 설정할 수 있습니다.
    • 기본값: true
    • 예:
      <Logger friendlyName="microsoft-playwright-testing" enabled="true" />
      
  • EnableGitHubSummary:

    • 설명: 이 설정을 사용하면 Microsoft Playwright Testing 서비스 보고자를 구성할 수 있습니다. GitHub Actions에서 실행할 때 GitHub 요약에 테스트 실행 요약을 포함할지 여부를 선택할 수 있습니다.
    • 기본값: true
    • 예제:
      <Parameter name="EnableGitHubSummary" value="false" />