Tracing
API для сбора и сохранения трассировок Playwright. Трассировки Playwright могут быть открыты в Trace Viewer после выполнения скрипта Playwright.
Начните запись трассировки перед выполнением действий. В конце остановите трассировку и сохраните её в файл.
using var playwright = await Playwright.CreateAsync();
var browser = await playwright.Chromium.LaunchAsync();
await using var context = await browser.NewContextAsync();
await context.Tracing.StartAsync(new()
{
Screenshots = true,
Snapshots = true
});
var page = await context.NewPageAsync();
await page.GotoAsync("https://playwright.dev");
await context.Tracing.StopAsync(new()
{
Path = "trace.zip"
});
Методы
GroupAsync
Добавлено в: v1.49Используйте test.step
, если доступно.
Создает новую группу в пределах трассировки, назначая все последующие вызовы API этой группе, до тех пор, пока не будет вызван Tracing.GroupEndAsync(). Группы могут быть вложенными и будут видны в просмотрщике трассировок.
Использование
// Все действия между GroupAsync и GroupEndAsync
// будут показаны в просмотрщике трассировок как группа.
await Page.Context.Tracing.GroupAsync("Open Playwright.dev > API");
await Page.GotoAsync("https://playwright.dev/");
await Page.GetByRole(AriaRole.Link, new() { Name = "API" }).ClickAsync();
await Page.Context.Tracing.GroupEndAsync();
Аргументы
-
Имя группы, отображаемое в просмотрщике трассировок.
-
options
TracingGroupOptions?
(опционально)Location
Location? (опционально)# Указывает пользовательское расположение для отображения группы в просмотрщике трассировок. По умолчанию используется расположение вызова Tracing.GroupAsync().
Возвращает
GroupEndAsync
Добавлено в: v1.49Закрывает последнюю группу, созданную с помощью Tracing.GroupAsync().
Использование
await Tracing.GroupEndAsync();
Возвращает
StartAsync
Добавлено в: v1.12Начать трассировку.
Использование
using var playwright = await Playwright.CreateAsync();
var browser = await playwright.Chromium.LaunchAsync();
await using var context = await browser.NewContextAsync();
await context.Tracing.StartAsync(new()
{
Screenshots = true,
Snapshots = true
});
var page = await context.NewPageAsync();
await page.GotoAsync("https://playwright.dev");
await context.Tracing.StopAsync(new()
{
Path = "trace.zip"
});
Аргументы
options
TracingStartOptions?
(опционально)-
Если указано, промежуточные файлы трассировки будут сохранены в файлы с данным префиксом имени внутри директории TracesDir, указанной в BrowserType.LaunchAsync(). Чтобы указать имя конечного zip-файла трассировки, необходимо передать опцию
path
в Tracing.StopAsync(). -
Screenshots
bool? (опционально)#Нужно ли захватывать скриншоты во время трассировки. Скриншоты используются для построения предварительного просмотра временной шкалы.
-
Snapshots
bool? (опционально)#Если эта опция включена, трассировка будет
- захватывать снимок DOM при каждом действии
- записывать сетевую активность
-
Sources
bool? (опционально) Добавлено в: v1.17#Включать ли исходные файлы для действий трассировки.
-
Title
string? (опционально) Добавлено в: v1.17#Имя трассировки, отображаемое в Trace Viewer.
-
Возвращает
StartChunkAsync
Добавлено в: v1.15Начать новый фрагмент трассировки. Если вы хотите записать несколько трассировок в одном BrowserContext, используйте Tracing.StartAsync() один раз, а затем создайте несколько фрагментов трассировки с помощью Tracing.StartChunkAsync() и Tracing.StopChunkAsync().
Использование
using var playwright = await Playwright.CreateAsync();
var browser = await playwright.Chromium.LaunchAsync();
await using var context = await browser.NewContextAsync();
await context.Tracing.StartAsync(new()
{
Screenshots = true,
Snapshots = true
});
var page = await context.NewPageAsync();
await page.GotoAsync("https://playwright.dev");
await context.Tracing.StartChunkAsync();
await page.GetByText("Get Started").ClickAsync();
// Все между StartChunkAsync и StopChunkAsync будет записано в трассировку.
await context.Tracing.StopChunkAsync(new()
{
Path = "trace1.zip"
});
await context.Tracing.StartChunkAsync();
await page.GotoAsync("http://example.com");
// Сохраните второй файл трассировки с другими действиями.
await context.Tracing.StopChunkAsync(new()
{
Path = "trace2.zip"
});
Аргументы
options
TracingStartChunkOptions?
(опционально)-
Name
string? (опционально) Добавлено в: v1.32#Если указано, промежуточные файлы трассировки будут сохранены в файлы с данным префиксом имени внутри директории TracesDir, указанной в BrowserType.LaunchAsync(). Чтобы указать имя конечного zip-файла трассировки, необходимо передать опцию
path
в Tracing.StopChunkAsync(). -
Title
string? (опционально) Добавлено в: v1.17#Имя трассировки, отображаемое в Trace Viewer.
-
Возвращает
StopAsync
Добавлено в: v1.12Остановить трассировку.
Использование
await Tracing.StopAsync(options);
Аргументы
options
TracingStopOptions?
(опционально)
Возвращает
StopChunkAsync
Добавлено в: v1.15Остановить фрагмент трассировки. См. Tracing.StartChunkAsync() для получения более подробной информации о нескольких фрагментах трассировки.
Использование
await Tracing.StopChunkAsync(options);
Аргументы
options
TracingStopChunkOptions?
(опционально)-
Экспортировать трассировку, собранную с момента последнего вызова Tracing.StartChunkAsync(), в файл с указанным путем.
-
Возвращает