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();
Аргументы
-
Имя группы, отображаемое в просмотрщике трассировок.
-
optionsTracingGroupOptions?(опционально)LocationLocation? (опционально)# Указывает пользовательское расположение для отображения группы в просмотрщике трассировок. По умолчанию используется расположение вызова 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"
});
Аргументы
optionsTracingStartOptions?(опционально)-
Если указано, промежуточные файлы трассировки будут сохранены в файлы с данным префиксом имени внутри директории TracesDir, указанной в BrowserType.LaunchAsync(). Чтобы указать имя конечного zip-файла трассировки, необходимо передать опцию
pathв Tracing.StopAsync(). -
Screenshotsbool? (опционально)#Нужно ли захватывать скриншоты во время трассировки. Скриншоты используются для построения предварительного просмотра временной шкалы.
-
Snapshotsbool? (опционально)#Если эта опция включена, трассировка будет
- захватывать снимок DOM при каждом действии
- записывать сетевую активность
-
Sourcesbool? (опционально) Добавлено в: v1.17#Включать ли исходные файлы для действий трассировки.
-
Titlestring? (опционально) Добавлено в: 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"
});
Аргументы
optionsTracingStartChunkOptions?(опционально)-
Namestring? (опционально) Добавлено в: v1.32#Если указано, промежуточные файлы трассировки будут сохранены в файлы с данным префиксом имени внутри директории TracesDir, указанной в BrowserType.LaunchAsync(). Чтобы указать имя конечного zip-файла трассировки, необходимо передать опцию
pathв Tracing.StopChunkAsync(). -
Titlestring? (опционально) Добавлено в: v1.17#Имя трассировки, отображаемое в Trace Viewer.
-
Возвращает
StopAsync
Добавлено в: v1.12Остановить трассировку.
Использование
await Tracing.StopAsync(options);
Аргументы
optionsTracingStopOptions?(опционально)
Возвращает
StopChunkAsync
Добавлено в: v1.15Остановить фрагмент трассировки. См. Tracing.StartChunkAsync() для получения более подробной информации о нескольких фрагментах трассировки.
Использование
await Tracing.StopChunkAsync(options);
Аргументы
optionsTracingStopChunkOptions?(опционально)-
Экспортировать трассировку, собранную с момента последнего вызова Tracing.StartChunkAsync(), в файл с указанным путем.
-
Возвращает