Поделиться через


Краткое руководство. Устранение неполадок с помощью предварительной версии тестирования Microsoft Playwright

В этом кратком руководстве вы узнаете, как устранять неполадки тестов Playwright с помощью отчетов и артефактов, опубликованных в предварительной версии Microsoft Playwright Testing. Кроме того, в этом руководстве показано, как использовать функцию создания отчетов независимо от того, выполняются ли тесты в облачных браузерах, предоставляемых службой.

После завершения работы с этим кратким руководством вы получите рабочую область Microsoft Playwright Testing для просмотра результатов тестов и артефактов на портале службы.

Внимание

Тестирование Microsoft Playwright в настоящее время находится в предварительной версии. Юридические условия, применимые к функциям Azure, которые находятся в бета-версии, предварительной версии или в противном случае еще не выпущены в общедоступную версию, см . в дополнительных условиях использования для предварительных версий Microsoft Azure.

Общие сведения

Служба тестирования Microsoft Playwright позволяет выполнять следующие действия:

  • Ускорение конвейеров сборки путем параллельного выполнения тестов с помощью браузеров, размещенных в облаке.
  • Упрощение устранения неполадок путем публикации результатов теста и артефактов в службе, что делает их доступными на портале службы.

Эти две функции службы можно использовать независимо или совместно, и каждая из них имеет собственный тарифный план. У вас есть гибкость:

  • Ускорить выполнение тестов и упростить устранение неполадок с помощью обоих функций: выполнение тестов в облачных браузерах и публикация результатов в службе.
  • Выполните тесты только в облачных браузерах, чтобы завершить тестирование быстрее.
  • Опубликуйте результаты теста в службе, продолжая выполнять тесты локально для эффективного устранения неполадок.

Примечание.

В этой статье описывается, как публиковать результаты теста в службе без использования браузеров, размещенных в облаке. Если вы хотите узнать, как также ускорить выполнение тестов, см . краткое руководство. Запуск тестов Playwright в масштабе

Необходимые компоненты

Создание рабочей области

Чтобы приступить к публикации результатов теста в службе тестирования Playwright, сначала создайте рабочую область Microsoft Playwright Testing на портале Playwright.

  1. Войдите на портал Playwright с помощью учетной записи Azure.

  2. Если у вас уже есть рабочая область, выберите существующую рабочую область и перейдите к следующему шагу.

    Совет

    Если у вас несколько рабочих областей, можно переключиться на другую рабочую область, выбрав имя рабочей области в верхней части страницы, а затем выберите " Управление всеми рабочими областями".

  3. Если у вас еще нет рабочей области, нажмите кнопку +Создать рабочую область и укажите следующие сведения:

    Поле Description
    Имя рабочей области Введите уникальное имя для идентификации рабочей области.
    Имя может состоять только из буквенно-цифровых символов и иметь длину от 3 до 64 символов.
    Подписка Azure Выберите подписку Azure, которую вы хотите использовать для этой рабочей области Microsoft Playwright Testing.
    Регион Выберите географическое расположение для размещения рабочей области.
    Это расположение, в котором данные тестового запуска хранятся для рабочей области.

    Снимок экрана: страница

  4. Выберите "Создать рабочую область", чтобы создать рабочую область в подписке.

    Во время создания рабочей области в подписке Azure создается новая группа ресурсов и ресурс Microsoft Playwright Testing Azure.

После завершения создания рабочей области вы будете перенаправлены в руководство по настройке.

Установка пакета Microsoft Playwright Testing

Чтобы использовать службу, установите пакет Microsoft Playwright Testing.

npm init @azure/microsoft-playwright-testing@latest

Примечание.

Убедитесь, что проект использует @playwright/test версию 1.47 или более поздней.

Эта команда создает playwright.service.config.ts файл, который служит для:

  • Прямой и проверка подлинности клиента Playwright в службе тестирования Microsoft Playwright.
  • Добавляет репортера для публикации результатов теста и артефактов.

Если у вас уже есть этот файл, запрос запрашивает переопределение файла.

Чтобы использовать только функцию создания отчетов для тестового запуска, отключите браузеры, размещенные в облаке, установив useCloudHostedBrowsers значение false.

export default defineConfig(
  config,
  getServiceConfig(config, {
    timeout: 30000,
    os: ServiceOS.LINUX,
	useCloudHostedBrowsers: false // Do not use cloud hosted browsers
  }),
  {
    reporter: [['list'], ['@azure/microsoft-playwright-testing/reporter']], // Reporter for Microsoft Playwright Testing service
  }
);

При задании значения false убедитесь, что браузеры, размещенные в облаке, не используются для выполнения тестов. Тесты выполняются на локальном компьютере, но результаты и артефакты публикуются в службе.

Чтобы использовать службу, установите пакет Microsoft Playwright Testing.

dotnet add package Azure.Developer.MicrosoftPlaywrightTesting.NUnit --prerelease

Примечание.

Убедитесь, что проект использует Microsoft.Playwright.NUnit версию 1.47 или более поздней.

Чтобы использовать только функцию создания отчетов, обновите следующий .runsettings файл проекта:

  1. Отключите размещенные в облаке браузеры, установив useCloudHostedBrowsers значение false.
  2. Добавьте средство ведения журнала Тестирования Microsoft Playwright в разделе "Журналы".
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
    <TestRunParameters>        
        <!--Select if you want to use cloud-hosted browsers to run your Playwright tests.-->
        <Parameter name="UseCloudHostedBrowsers" value="true" />
        <!--Select the authentication method you want to use with Entra-->
    </TestRunParameters> 
 .
 .
 .
    <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>

Совет

Если вы хотите ускорить тестовый запуск с помощью облачного браузера, можно задать useCloudHostedBrowsers значение true. При этом тесты будут выполняться в управляемых службах браузерах.

Настройка конечной точки региона службы

В настройке необходимо предоставить конечную точку службы для конкретного региона. Конечная точка зависит от региона Azure, выбранного при создании рабочей области.

Чтобы получить URL-адрес конечной точки службы, выполните следующие действия.

  1. Чтобы добавить конечную точку региона в настройке, скопируйте конечную точку региона для рабочей области.

    URL-адрес конечной точки соответствует региону Azure, выбранному при создании рабочей области. Убедитесь, что этот URL-адрес доступен в PLAYWRIGHT_SERVICE_URL переменной среды.

    Снимок экрана, на котором показано, как скопировать конечную точку региона рабочей области на портале playwright Testing.

Настройка среды

Чтобы настроить среду, необходимо настроить PLAYWRIGHT_SERVICE_URL переменную среды со значением, полученным на предыдущих шагах.

Мы рекомендуем использовать dotenv модуль для управления средой. При этом dotenvвы определяете .env переменные среды в файле.

  1. Добавьте модуль в dotenv проект:

    npm i --save-dev dotenv
    
  2. Создайте файл вместе с файлом .env playwright.config.ts в проекте Playwright:

    PLAYWRIGHT_SERVICE_URL={MY-REGION-ENDPOINT}
    

    Обязательно замените {MY-REGION-ENDPOINT} заполнитель текста значением, скопированным ранее.

Настройка конфигурации службы

Создайте файл PlaywrightServiceSetup.cs в корневом каталоге со следующим содержимым.

using Azure.Developer.MicrosoftPlaywrightTesting.NUnit;

namespace PlaywrightTests; // Remember to change this as per your project namespace

[SetUpFixture]
public class PlaywrightServiceSetup : PlaywrightServiceNUnit {};

Примечание.

Убедитесь, что проект использует Microsoft.Playwright.NUnit версию 1.47 или более поздней.

Настройка проверки подлинности

Чтобы опубликовать результаты теста и артефакты в рабочей области Microsoft Playwright Testing, необходимо выполнить проверку подлинности клиента Playwright, на котором выполняются тесты со службой. Клиент может быть локальным компьютером разработки или компьютером CI.

Служба предлагает два метода проверки подлинности: идентификатор Microsoft Entra и маркеры доступа.

Идентификатор Microsoft Entra использует учетные данные Azure, требуя входа в учетную запись Azure для безопасного доступа. Кроме того, вы можете создать маркер доступа из рабочей области Playwright и использовать его в настройке.

Настройка проверки подлинности с помощью идентификатора Microsoft Entra

Идентификатор Microsoft Entra — это идентификатор по умолчанию и рекомендуемая проверка подлинности для службы. На локальном компьютере разработки можно использовать Azure CLI для входа.

az login

Примечание.

Если вы являетесь частью нескольких клиентов Microsoft Entra, убедитесь, что вы входите в клиент, в котором принадлежит ваша рабочая область. Идентификатор клиента можно получить из портал Azure. Дополнительные сведения см. в статье "Поиск клиента Microsoft Entra". После получения идентификатора выполните вход с помощью команды az login --tenant <TenantID>

Настройка проверки подлинности с помощью маркеров доступа

Вы можете создать маркер доступа из рабочей области Playwright Testing и использовать его в настройке. Однако настоятельно рекомендуется использовать идентификатор Microsoft Entra для проверки подлинности из-за повышенной безопасности. Маркеры доступа, в то время как удобные, функции, такие как долгоживущие пароли и более подвержены скомпрометации.

  1. Проверка подлинности с помощью маркеров доступа по умолчанию отключена. Чтобы использовать, включите проверку подлинности на основе маркера доступа

  2. Настройка проверки подлинности с помощью маркеров доступа

Внимание

Настоятельно рекомендуется использовать идентификатор Microsoft Entra для проверки подлинности в службе. Если вы используете маркеры доступа, см. инструкции по управлению маркерами доступа

Включение артефактов в настройке Playwright

playwright.config.ts В файле проекта убедитесь, что вы собираете все необходимые артефакты.

  use: {
    trace: 'on-first-retry',
    video:'retain-on-failure',
    screenshot:'on'
  }

Включите артефакты, такие как снимок экрана, видео и трассировки, которые будут записаны Playwright.

После сбора этих артефактов подключите их к TestContext ним, чтобы убедиться, что они доступны в тестовых отчетах. Дополнительные сведения см. в нашем примере проекта для NUnit

Запуск тестов и публикация результатов в Microsoft Playwright Testing

Теперь вы подготовили конфигурацию для публикации результатов теста и артефактов с помощью Microsoft Playwright Testing. Запустите тесты с помощью только что созданного playwright.service.config.ts файла и публикации результатов теста и артефактов в службе.

   npx playwright test --config=playwright.service.config.ts

Примечание.

Для функции отчетов Microsoft Playwright Testing плата взимается на основе опубликованных результатов теста числа. Если вы являетесь первым пользователем или приступить к работе с бесплатной пробной версией, вы можете начать публикацию одного результата теста вместо полного набора тестов, чтобы избежать исчерпания ограничений бесплатной пробной версии.

После завершения теста можно просмотреть состояние теста в терминале.

Running 6 test using 2 worker
    5 passed, 1 failed (20.2s)

Test report: https://playwright.microsoft.com/workspaces/<workspace-id>/runs/<run-id>

Теперь вы подготовили конфигурацию для публикации результатов теста и артефактов с помощью Microsoft Playwright Testing. Запустите тесты с помощью .runsettings файла и публикации результатов теста и артефактов в службе.

dotnet test --settings:.runsettings

Параметры тестового запуска определяются в .runsettings файле. Дополнительные сведения см. в статье об использовании параметров пакета службы

Примечание.

Для функции отчетов Microsoft Playwright Testing плата взимается на основе опубликованных результатов теста числа. Если вы являетесь первым пользователем или приступить к работе с бесплатной пробной версией, вы можете начать публикацию одного результата теста вместо полного набора тестов, чтобы избежать исчерпания ограничений бесплатной пробной версии.

После завершения тестового запуска можно просмотреть состояние теста в терминале.

Starting test execution, please wait...

Initializing reporting for this test run. You can view the results at: https://playwright.microsoft.com/workspaces/<workspace-id>/runs/<run-id>

A total of 100 test files matched the specified pattern.

Test Report: https://playwright.microsoft.com/workspaces/<workspace-id>/runs/<run-id>

Passed!  - Failed:     0, Passed:     100, Skipped:     0, Total:     100, Duration: 10 m - PlaywrightTestsNUnit.dll (net7.0)

Workload updates are available. Run `dotnet workload list` for more information.

Внимание

В зависимости от размера набора тестов может взиматься дополнительная плата за результаты теста, превышающие выделенные результаты бесплатного теста.

Просмотр тестов и результатов на портале Playwright

Теперь на портале Playwright можно устранить неполадки неудачных тестовых случаев.

  1. После завершения тестового запуска создается ссылка на портал Playwright. Откройте эту ссылку, чтобы просмотреть подробные результаты теста и связанные артефакты. На портале отображаются важные сведения, в том числе:

    • Сведения о сборке CI
    • Общее состояние выполнения теста
    • ИД фиксации, связанный с тестовой запуском

    Снимок экрана: список тестов в тестовом запуске.

  2. Портал Playwright предоставляет все необходимые сведения для устранения неполадок. Вы можете:

    • Переключение между повторными попытками.
    • Просмотр подробных журналов ошибок, шагов тестирования и присоединенных артефактов, таких как снимки экрана или видео.
    • Перейдите непосредственно к средству просмотра трассировки для более глубокого анализа.

    Снимок экрана: предварительный просмотр теста.

  3. Средство просмотра трассировки позволяет выполнять тест визуально. Вы можете:

    • Используйте временную шкалу, чтобы навести указатель мыши на отдельные шаги, показыв состояние страницы до и после каждого действия.
    • Проверьте подробные журналы, моментальные снимки DOM, сетевое действие, ошибки и выходные данные консоли для каждого шага.

    Снимок экрана: средство просмотра трассировки.

  1. После завершения тестового запуска вы получите ссылку на портал Playwright в терминале. Откройте эту ссылку, чтобы просмотреть подробные результаты теста и связанные артефакты. На портале отображаются важные сведения, в том числе:

    • Сведения о сборке CI
    • Общее состояние выполнения теста
    • ИД фиксации, связанный с тестовой запуском

    Снимок экрана: список тестов в тестовом запуске.

  2. Портал Playwright предоставляет все необходимые сведения для устранения неполадок. Вы можете:

    • Просмотр подробных журналов ошибок и присоединенных артефактов, таких как снимки экрана или видео.
    • Перейдите непосредственно к средству просмотра трассировки для более глубокого анализа.

    Снимок экрана: предварительный просмотр теста.

Примечание.

Некоторые метаданные, такие как владелец, описание и категория, в настоящее время не отображаются на панели мониторинга службы. Если вы хотите просмотреть дополнительные сведения, отправьте проблему GitHub в нашем репозитории.

  1. Средство просмотра трассировки позволяет выполнять тест визуально. Вы можете:

    • Используйте временную шкалу, чтобы навести указатель мыши на отдельные шаги, показыв состояние страницы до и после каждого действия.
    • Проверьте подробные журналы, моментальные снимки DOM, сетевое действие, ошибки и выходные данные консоли для каждого шага.

    Снимок экрана: средство просмотра трассировки.

Совет

Вы также можете использовать службу Тестирования Microsoft Playwright для параллельного выполнения тестов с помощью браузеров, размещенных в облаке. Отчеты и размещенные в облаке браузеры являются независимыми функциями и выставляются отдельно. Вы можете использовать любой из этих или обоих вариантов. Дополнительные сведения см. в разделе "Использование функций службы"

Примечание.

Результаты теста и артефакты, которые вы публикуете, хранятся в службе в течение 90 дней. После этого они автоматически удаляются.

Следующий шаг

Вы успешно создали рабочую область Тестирования Microsoft Playwright на портале Playwright и выполните тесты Playwright в облачных браузерах.

Перейдите к следующему краткому руководству, чтобы настроить непрерывное комплексное тестирование, выполнив тесты Playwright в рабочем процессе CI/CD.