TestSpecification
La clase TestSpecification
describe el módulo a ejecutar como prueba y sus parámetros asociados.
Solo se puede crear una especificación llamando al método createSpecification
en una instancia de TestProject
:
const specification = project.createSpecification(
resolve('./example.test.ts'),
[20, 40] // Líneas de prueba opcionales
);
createSpecification
espera un ID de módulo ya resuelto. No resuelve automáticamente la ruta del archivo ni verifica su existencia en el sistema de archivos.
taskId
Identificador único del módulo de prueba.
project
Hace referencia al TestProject
al que pertenece este módulo de prueba.
moduleId
El ID del módulo dentro del grafo de módulos de Vite. Generalmente es una ruta de archivo absoluta que utiliza el separador POSIX:
'C:/Users/Documents/project/example.test.ts'; // ✅
'/Users/mac/project/example.test.ts'; // ✅
'C:\\Users\\Documents\\project\\example.test.ts'; // ❌
testModule
Instancia de TestModule
asociada a esta especificación. Si la prueba aún no ha sido encolada, su valor será undefined
.
pool experimental
El pool
donde se ejecutará este módulo de prueba.
DANGER
Es posible tener múltiples pools en un solo proyecto de pruebas utilizando poolMatchGlob
y typecheck.enabled
. Esto implica que pueden existir varias especificaciones con el mismo moduleId
pero un pool
diferente. En Vitest 4, el proyecto solo admitirá un único pool, y esta propiedad será eliminada.
testLines
Este es un arreglo de números de línea en el código fuente donde se definen las pruebas. Este campo solo se define si el método createSpecification
recibió un arreglo de líneas.
Ten en cuenta que si no se encuentra ninguna prueba en al menos una de las líneas especificadas, la suite completa fallará. Un ejemplo de configuración correcta de testLines
:
const specification = project.createSpecification(
resolve('./example.test.ts'),
[3, 8, 9]
);
import { test, describe } from 'vitest'
test('verification works')
describe('a group of tests', () => {
// ...
test('nested test')
test.skip('skipped test')
})
toJSON
function toJSON(): SerializedTestSpecification;
toJSON
genera un objeto en formato JSON que puede ser consumido por el Modo de Navegador o la Interfaz de Usuario de Vitest.