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


Краткое руководство. Выполнение комплексных тестов в масштабе с помощью предварительной версии Microsoft Playwright Testing

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

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

Внимание

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

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

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

Чтобы приступить к выполнению тестов 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.service.config.ts файл, который служит для:

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

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

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

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

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

В настройке необходимо предоставить конечную точку службы для конкретного региона. Конечная точка зависит от региона 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 или более поздней.

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

Чтобы запустить тесты Playwright в рабочей области 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

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

Запуск одного теста со службой

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

Примечание.

Функция создания отчетов включена по умолчанию для существующих рабочих областей. Это развертывается на этапах и займет несколько дней. Чтобы избежать сбоев, убедитесь, что Rich diagnostics using reporting для рабочей области установлен параметр ON, прежде чем продолжить. См. инструкции по включению отчетов для рабочей области.

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

Выполните следующие действия, чтобы запустить один тест Playwright с помощью Microsoft Playwright Testing:

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

  1. Откройте окно терминала.

  2. Введите следующую команду, чтобы запустить тест Playwright в удаленных браузерах в рабочей области:

    Замените {name-of-file.spec.ts} заполнитель текста именем файла спецификации теста.

    npx playwright test {name-of-file.spec.ts} --config=playwright.service.config.ts
    

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

    Running 1 test using 1 worker
        1 passed (2.2s)
    
    To open last HTML report run:
    
    npx playwright show-report
    

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

Внимание

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

Запуск полного набора тестов с помощью службы

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

Выполните следующие действия, чтобы запустить полный набор тестов Playwright с помощью Microsoft Playwright Testing:

При выполнении нескольких тестов Playwright или полного набора тестов с помощью Microsoft Playwright Testing можно дополнительно указать количество параллельных рабочих ролей в качестве параметра командной строки.

  1. Откройте окно терминала.

  2. Введите следующую команду, чтобы запустить набор тестов Playwright в удаленных браузерах в рабочей области:

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

    В зависимости от размера набора тестов эта команда выполняет тесты до 20 параллельных рабочих ролей.

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

    Running 6 tests using 6 workers
        6 passed (18.2s)
    
    Test report: https://playwright.microsoft.com/workspaces/<workspace-id>/runs/<run-id>
    

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

dotnet test --settings:.runsettings --logger "microsoft-playwright-testing" -- NUnit.NumberOfTestWorkers=20

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

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

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: 59 s - 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 Testing можно использовать независимо. Вы можете публиковать результаты теста на портале без использования функции размещенных в облаке браузеров, а также использовать только облачные браузеры для ускорения набора тестов без публикации результатов теста.

Примечание.

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

Оптимизация конфигурации параллельной рабочей роли

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

С помощью Microsoft Playwright Testing можно запускать до 50 параллельных рабочих ролей. Некоторые факторы влияют на лучшую конфигурацию проекта, такие как ЦП, память и сетевые ресурсы клиентского компьютера, емкость обработки нагрузки целевого приложения и тип действий, выполняемых в тестах.

Можно указать количество параллельных рабочих ролей в командной строке командной строки Playwright или настроить workers свойство в файле конфигурации службы Playwright.

Можно указать количество параллельных рабочих ролей в командной строке интерфейса командной строки Playwright или настроить NumberOfTestWorkers свойство в .runsettings файле.

Узнайте больше о том, как определить оптимальную конфигурацию для оптимизации завершения набора тестов.

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

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

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