Skip to content
Vitest 3
Main Navigation Guida & APIConfigurazioneModalità BrowserAPI avanzata
3.2.0
2.1.9
1.6.1
0.34.6

Italiano

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

Italiano

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

Aspetto

Sidebar Navigation

Introduzione

Perché Vitest

Per Iniziare

Caratteristiche

Configurazione di Vitest

API

Riferimento API di test

Funzioni Mock

Vi

expect

expectTypeOf

assert

assertType

Guida

Interfaccia a Riga di Comando

Filtro dei Test

Progetti di Test

Reporter

Copertura

Snapshot

Mocking

Parallelismo

Tipi di Test

Vitest UI

Test nel Codice Sorgente

Contesto di Test

Annotazioni dei Test

Ambiente di Test

Estensione dei Matcher

Integrazioni IDE

Debugging

Errori Comuni

Guida alla Migrazione

Migrazione a Vitest 3.0

Migrazione da Jest

Prestazioni

Profilazione delle prestazioni dei test

Ottimizzare le Prestazioni

Modalità Browser

API Avanzate

Confronto con Altri Test Runner

In questa pagina

Filtro dei Test ​

Filtro, timeout e gestione della concorrenza per suite e test.

CLI ​

È possibile utilizzare la CLI per filtrare i file di test per nome:

bash
$ vitest basic

Verranno eseguiti solo i file di test che contengono basic, ad esempio:

basic.test.ts
basic-foo.test.ts
basic/foo.test.ts

È inoltre possibile utilizzare l'opzione -t, --testNamePattern <pattern> per filtrare i test in base al loro nome completo. Questo è utile quando si desidera filtrare in base al nome definito all'interno di un file di test, piuttosto che in base al nome del file stesso.

A partire da Vitest 3, è anche possibile specificare un test utilizzando il nome del file e il numero di riga:

bash
$ vitest basic/foo.test.ts:10

WARNING

Si noti che Vitest richiede il percorso completo del file affinché questa funzionalità sia operativa. Può essere un percorso relativo alla directory di lavoro corrente o un percorso di file assoluto.

bash
$ vitest basic/foo.js:10 # ✅
$ vitest ./basic/foo.js:10 # ✅
$ vitest /users/project/basic/foo.js:10 # ✅
$ vitest foo:10 # ❌
$ vitest ./basic/foo:10 # ❌

Al momento Vitest non supporta gli intervalli di righe:

bash
$ vitest basic/foo.test.ts:10, basic/foo.test.ts:25 # ✅
$ vitest basic/foo.test.ts:10-25 # ❌

Specificare un Timeout ​

È possibile passare facoltativamente un timeout in millisecondi come terzo argomento ai test. Il valore predefinito è 5 secondi.

ts
import { test } from 'vitest';

test('name', async () => {
  /* ... */
}, 1000);

Anche gli hook possono ricevere un timeout, con lo stesso timeout predefinito di 5 secondi.

ts
import { beforeAll } from 'vitest';

beforeAll(async () => {
  /* ... */
}, 1000);

Saltare Suite e Test ​

Utilizzare .skip per saltare determinate suite o test.

ts
import { assert, describe, it } from 'vitest';

describe.skip('skipped suite', () => {
  it('test', () => {
    // Suite saltata, nessun errore
    assert.equal(Math.sqrt(4), 3);
  });
});

describe('suite', () => {
  it.skip('skipped test', () => {
    // Test saltato, nessun errore
    assert.equal(Math.sqrt(4), 3);
  });
});

Selezionare Suite e Test da Eseguire ​

Utilizzare .only per eseguire solo determinate suite o test.

ts
import { assert, describe, it } from 'vitest';

// Verranno eseguite solo questa suite (e le altre contrassegnate con `only`)
describe.only('suite', () => {
  it('test', () => {
    assert.equal(Math.sqrt(4), 3);
  });
});

describe('another suite', () => {
  it('skipped test', () => {
    // Test saltato, poiché i test sono in esecuzione in modalità `Only`
    assert.equal(Math.sqrt(4), 3);
  });

  it.only('test', () => {
    // Vengono eseguiti solo questo test (e gli altri contrassegnati con `only`)
    assert.equal(Math.sqrt(4), 2);
  });
});

Suite e Test Non Implementati ​

Utilizzare .todo per creare stub di suite e test che devono ancora essere implementati.

ts
import { describe, it } from 'vitest';

// Nel report verrà mostrata una voce per questa suite
describe.todo('unimplemented suite');

// Nel report verrà mostrata una voce per questo test
describe('suite', () => {
  it.todo('unimplemented test');
});
Pager
Pagina precedenteInterfaccia a Riga di Comando
Pagina successivaProgetti di Test

Rilasciato sotto la licenza MIT.

Copyright (c) 2021-Present Vitest Team

https://vitest.dev/guide/filtering

Rilasciato sotto la licenza MIT.

Copyright (c) 2021-Present Vitest Team