Skip to content
Vitest 3
Main Navigation Guide & APIConfigurationMode NavigateurAPI avancée
3.2.0
2.1.9
1.6.1
0.34.6

Français

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

Français

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

Apparence

Sidebar Navigation

API

Node API

API avancée

API Vitest

TestProject

TestSpecification

Test Task API

TestCase

TestSuite

TestModule

TestCollection

API des plugins

API du Runner

Rapporteurs

Métadonnées de tâche

Guide

Exécuter les tests

Extension des Rapporteurs

Pool personnalisé

Configuration de Vitest

Référence de l'API des Tests

Sur cette page

TestSpecification ​

La classe TestSpecification décrit le module à exécuter en tant que test et ses paramètres associés.

Une spécification ne peut être créée qu'en appelant la méthode createSpecification sur une instance de projet de tests :

ts
const specification = project.createSpecification(
  resolve('./example.test.ts'),
  [20, 40] // Lignes de test facultatives
);

createSpecification attend un ID de module déjà résolu. Elle n'effectue pas la résolution automatique du chemin du fichier ni ne vérifie son existence sur le système de fichiers.

taskId ​

Identifiant unique du module de test.

project ​

Référence au TestProject auquel le module de test est rattaché.

moduleId ​

L'ID du module au sein du graphe de modules de Vite. Il s'agit généralement d'un chemin de fichier absolu utilisant le séparateur Posix :

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

testModule ​

Instance de TestModule associée à cette spécification. Si le test n'a pas encore été mis en file d'attente pour exécution, cette instance sera undefined.

pool expérimental ​

Le pool dans lequel le module de test sera exécuté.

DANGER

Il est possible d'avoir plusieurs pools au sein d'un même projet de tests en utilisant poolMatchGlob et typecheck.enabled. Cela implique qu'il peut exister plusieurs spécifications avec le même moduleId mais un pool différent. Dans Vitest 4, le projet ne prendra en charge qu'un seul pool, et cette propriété sera supprimée.

testLines ​

Un tableau de numéros de ligne dans le code source où les tests sont définis. Ce champ n'est renseigné que si la méthode createSpecification a été appelée avec un tableau de lignes.

Notez que si au moins une ligne spécifiée ne contient pas de test, la suite entière échouera. Voici un exemple de configuration testLines correcte :

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;

La méthode toJSON génère un objet JSON utilisable par le Mode Navigateur ou l'Interface Utilisateur de Vitest.

Pager
Page précédenteTestProject
Page suivanteTestCase

Publié sous la licence MIT.

Copyright (c) 2021-Present Vitest Team

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

Publié sous la licence MIT.

Copyright (c) 2021-Present Vitest Team