Test Filtreleme
Suite'ler ve testler için filtreleme, zaman aşımları, eşzamanlı çalıştırma
CLI
Test dosyalarını ada göre filtrelemek için CLI'yı kullanabilirsiniz:
$ vitest basic
Bu, adında basic
geçen tüm test dosyalarını çalıştırır:
basic.test.ts
basic-foo.test.ts
basic/foo.test.ts
Zaman Aşımı Belirtme
Testlere isteğe bağlı olarak, üçüncü argüman olarak milisaniye cinsinden bir zaman aşımı değeri geçirebilirsiniz. Varsayılan değer 5 saniyedir.
import { test } from 'vitest';
test('name', async () => {
/* ... */
}, 1000);
Hook'lar da varsayılan olarak aynı 5 saniyelik zaman aşımına sahiptir.
import { beforeAll } from 'vitest';
beforeAll(async () => {
/* ... */
}, 1000);
Suite'leri ve Testleri Atlamak
Belirli test suitlerini veya testleri çalıştırmayı atlamak için .skip
kullanın.
import { assert, describe, it } from 'vitest';
describe.skip('atlanan suite', () => {
it('test', () => {
// Suite atlandı, hata yok
assert.equal(Math.sqrt(4), 3);
});
});
describe('suite', () => {
it.skip('atlanan test', () => {
// Test atlandı, hata yok
assert.equal(Math.sqrt(4), 3);
});
});
Çalıştırılacak Suite'leri ve Testleri Seçmek
Yalnızca belirli suite'leri veya testleri çalıştırmak için .only
kullanın.
import { assert, describe, it } from 'vitest';
// Sadece bu suite (ve .only ile işaretlenmiş diğerleri) çalıştırılır
describe.only('suite', () => {
it('test', () => {
assert.equal(Math.sqrt(4), 3);
});
});
describe('another suite', () => {
it('atlanan test', () => {
// Testler yalnızca modunda çalıştığı için bu test atlandı
assert.equal(Math.sqrt(4), 3);
});
it.only('test', () => {
// Sadece bu test (ve .only ile işaretlenmiş diğerleri) çalıştırılır
assert.equal(Math.sqrt(4), 2);
});
});
Uygulanmamış Suite'ler ve Testler
Henüz uygulanmamış test suitlerini ve testleri belirtmek için .todo
kullanın.
import { describe, it } from 'vitest';
// Bu test suiti için raporda bir girdi gösterilecektir
describe.todo('uygulanmamış suite');
// Bu test için de raporda bir girdi gösterilecektir
describe('suite', () => {
it.todo('uygulanmamış test');
});