Spec-Zone.ru › Playwright

TestStepInfo

TestStepInfo содержит информацию о текущем выполняемом шаге теста. Она передаётся в качестве аргумента функции шага. TestStepInfo предоставляет средства управления выполнением шага теста.

import { test, expect } from '@playwright/test';

test('basic test', async ({ page, browserName }) => {
  await test.step('check some behavior', async step => {
    step.skip(browserName === 'webkit', 'The feature is not available in WebKit');
    // ... rest of the step code
  });
});

Методы​

attach​

Прикрепляет значение или файл с диска к текущему шагу теста. Некоторые репортеры отображают вложения шага теста. Необходимо указать либо path, либо body, но не оба параметра одновременно. Этот метод прикрепляет вложение к шагу, в отличие от testInfo.attach(), который сохраняет все вложения на уровне теста.

Например, к шагу теста можно прикрепить снимок экрана:

import { test, expect } from '@playwright/test';

test('basic test', async ({ page }) => {
  await page.goto('https://playwright.dev');
  await test.step('check page rendering', async step => {
    const screenshot = await page.screenshot();
    await step.attach('screenshot', { body: screenshot, contentType: 'image/png' });
  });
});

Также можно прикрепить файлы, возвращённые вашими API:

import { test, expect } from '@playwright/test';
import { download } from './my-custom-helpers';

test('basic test', async ({}) => {
  await test.step('check download behavior', async step => {
    const tmpPath = await download('a');
    await step.attach('downloaded', { path: tmpPath });
  });
});
примечание

testStepInfo.attach() автоматически копирует прикреплённые файлы в место, доступное репортерам. После вызова attach можно безопасно удалить вложение.

Использование

await testStepInfo.attach(name);
await testStepInfo.attach(name, options);

Аргументы

  • name string

    Имя вложения. Имя также будет очищено и использовано в качестве префикса имени файла при сохранении на диск.

  • options Object (необязательно)

    • body string | Buffer (необязательно)

      Содержимое вложения. Не может использоваться одновременно с path.

    • contentType string (необязательно)

      Тип содержимого этого вложения для корректного отображения в отчёте, например 'application/json' или 'image/png'. Если параметр не указан, тип содержимого определяется на основе path или по умолчанию принимает значение text/plain для вложений типа string и application/octet-stream для вложений типа Buffer.

    • path string (необязательно)

      Путь к прикрепляемому файлу в файловой системе. Не может использоваться одновременно с body.

Возвращает

  • Promise<void>

skip()​

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

Использование

import { test, expect } from '@playwright/test';

test('my test', async ({ page }) => {
  await test.step('check expectations', async step => {
    step.skip();
    // step body below will not run
    // ...
  });
});

skip(condition)​

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

Использование

import { test, expect } from '@playwright/test';

test('my test', async ({ page, isMobile }) => {
  await test.step('check desktop expectations', async step => {
    step.skip(isMobile, 'not present in the mobile layout');
    // step body below will not run
    // ...
  });
});

Аргументы

  • condition boolean

    Условие пропуска. Шаг теста пропускается, если условие равно true.

  • description string (необязательно)

    Необязательное описание, которое будет отображено в отчёте о тестировании.

Свойства​

annotations​

Список аннотаций, применимых к текущему шагу теста.

Использование

testStepInfo.annotations

Тип

  • Array<Object>
    • type string

      Тип аннотации, например 'skip'.

    • description string (необязательно)

      Необязательное описание.

    • location Location (необязательно)

      Необязательное местоположение в исходном коде, где добавлена аннотация.

titlePath​

Полный путь заголовков, начинающийся с имени файла теста и включающий заголовки шагов. См. также testInfo.titlePath.

Использование

testStepInfo.titlePath

Тип

  • Array<string>

© 2026 Microsoft
Licensed under the Apache License, Version 2.0.
https://playwright.dev/docs/api/class-teststepinfo

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API