Skip to content
Vitest 3
Main Navigation Руководство & APIКонфигурацияРежим браузераРасширенный API
3.2.0
2.1.9
1.6.1
0.34.6

Русский

English
简体中文
繁體中文
Español
Français
Português – Brasil
Deutsch
日本語
한국어
Italiano
Polski
Türkçe
čeština
magyar

Русский

English
简体中文
繁體中文
Español
Français
Português – Brasil
Deutsch
日本語
한국어
Italiano
Polski
Türkçe
čeština
magyar

Внешний вид

Sidebar Navigation

API

Node API

Расширенный API

Vitest API

TestProject

TestSpecification

Test Task API

TestCase

TestSuite

TestModule

TestCollection

API плагина

Runner API

Репортеры

Метаданные задачи

Руководство

Запуск тестов

Расширение репортеров

Пользовательский пул

Настройка Vitest

Справочник по API тестирования

Содержание страницы

TestSpecification ​

Класс TestSpecification описывает, какой модуль следует запускать как тест, и его параметры.

Вы можете создать спецификацию, только вызвав метод createSpecification для тестового проекта:

ts
const specification = project.createSpecification(
  resolve('./example.test.ts'),
  [20, 40] // необязательные строки с тестами
);

createSpecification ожидает разрешенный идентификатор модуля. Он не автоматически определяет файл и не проверяет его существование в файловой системе.

taskId ​

Идентификатор тестового модуля.

project ​

Это ссылка на TestProject, которому принадлежит тестовый модуль.

moduleId ​

ID модуля в графе модулей Vite. Обычно это абсолютный путь к файлу с использованием разделителя posix:

ts
'C:/Users/Documents/project/example.test.ts'; // ✅
'/Users/mac/project/example.test.ts'; // ✅
'C:\\Users\\Documents\\project\\example.test.ts'; // ❌

testModule ​

Экземпляр TestModule, связанный со спецификацией. Если тест еще не был добавлен в очередь выполнения, это будет undefined.

pool экспериментально ​

pool, в котором будет выполняться тестовый модуль.

DANGER

Возможно иметь несколько пулов в одном тестовом проекте, используя poolMatchGlob и typecheck.enabled. Это означает, что можно иметь несколько спецификаций с одним и тем же moduleId, но с разными пулами. В Vitest 4 проект будет поддерживать только один пул, и это свойство будет удалено.

testLines ​

Это массив строк в исходном коде, где определены тесты. Это поле определяется только в том случае, если методу createSpecification был передан массив.

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

ts
const specification = project.createSpecification(
  resolve('./example.test.ts'),
  [3, 8, 9]
);
ts
import { test, describe } from 'vitest'

test('verification works')

describe('a group of tests', () => { 
  // ...

  test('nested test')
  test.skip('skipped test')
})
1
2
3
4
5
6
7
8
9
10

toJSON ​

ts
function toJSON(): SerializedTestSpecification;

toJSON генерирует объект, совместимый с JSON, который может быть использован режимом браузера или интерфейсом Vitest UI.

Pager
Предыдущая страницаTestProject
Следующая страницаTestCase

Выпущено на условиях лицензии MIT.

Авторские права (c) 2021-Present Vitest Team

https://vitest.dev/advanced/api/test-specification

Выпущено на условиях лицензии MIT.

Авторские права (c) 2021-Present Vitest Team