Диагностика

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

Совет

При использовании Microsoft.Testing.Platform.MSBuild (включается транзитивно MSTest, NUnit и xUnit runners), эти расширения регистрируются автоматически при установке пакетов NuGet — изменения кода не требуются. Регистрация вручную, указанная в этой статье, требуется только в том случае, если вы отключили автоматическую точку входа, задав параметр <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>.

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

Видеорегистратор

Средство записи видео записывает экран во время выполнения тестов и присоединяет записанные видео к тестовой сессии как артефакты. Запись включается отдельно для каждого запуска и осуществляется внешним процессом ffmpeg, который должен быть доступен в PATH или быть задан через явно указанный путь. Для этого расширения требуется пакет NuGet Microsoft.Testing.Extensions.VideoRecorder.

Note

Доступно в MTP начиная с версии 2.3.0. Это расширение является экспериментальным, а его параметры и формат выходных данных могут измениться в будущей версии.

Регистрация вручную

var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddVideoRecorderProvider();

Options

Вариант Версия MTP Description
--capture-video 2.3.0 Включает запись экрана. Необязательный элемент управления хранением значений: on-failure (по умолчанию) сохраняет кадры только для неудачных тестов и always сохраняет кадры для каждого теста.
--capture-video-source 2.3.0 Задает источник записи. Допустимые значения: screen (по умолчанию) и window. Требует использования --capture-video.
--capture-video-granularity 2.3.0 Задает, создает ли средство записи отдельное видео для каждого теста или одно видео с главами для всего прогона. Допустимые значения: test (по умолчанию) и session. Требует использования --capture-video.
--capture-video-max-duration 2.3.0 Ограничивает использование дискового пространства при длительной работе, сохраняя примерно последние N секунд записи. Это значение является положительным целым числом секунд. Требует использования --capture-video.
--capture-video-chapters 2.3.0 Определяет, добавляются ли закладки глав в видео сеанса. Допустимые значения: on (по умолчанию) и off. Требует использования --capture-video.
--capture-video-args 2.3.0 Передает дополнительные аргументы базовому регистратору (ffmpeg). Требует использования --capture-video.