TestSpecification
TestSpecification sınıfı, hangi modülün test olarak çalıştırılacağını ve ilgili parametrelerini tanımlar.
Bir spesifikasyonu yalnızca bir test projesi içinde createSpecification yöntemini çağırarak oluşturabilirsiniz:
const specification = project.createSpecification(
resolve('./example.test.ts'),
[20, 40] // isteğe bağlı test satırları
);createSpecification çözümlenmiş bir modül kimliği bekler. Dosyayı otomatik olarak çözümlemez veya dosya sisteminde var olup olmadığını kontrol etmez.
taskId
Test modülünün tanımlayıcısı.
project
Bu, test modülünün ait olduğu TestProject referansıdır.
moduleId
Modülün Vite'nin modül grafiğindeki kimliği. Genellikle, posix ayırıcı kullanan mutlak bir dosya yoludur:
'C:/Users/Documents/project/example.test.ts'; // ✅
'/Users/mac/project/example.test.ts'; // ✅
'C:\\Users\\Documents\\project\\example.test.ts'; // ❌testModule
Spesifikasyonla ilişkili TestModule örneği. Test henüz sıraya alınmadıysa, bu undefined olacaktır.
pool deneysel
Test modülünün çalışacağı pool.
DANGER
poolMatchGlob ve typecheck.enabled ile tek bir test projesinde birden fazla havuz bulunması mümkündür. Bu, aynı moduleId ancak farklı pool ile birden fazla spesifikasyonun olabileceği anlamına gelir. Vitest 4'te, proje yalnızca tek bir havuzu destekleyecek ve bu özellik kaldırılacaktır.
testLines
Bu, test dosyalarının tanımlandığı kaynak kodundaki satırların bir dizisidir. Bu alan yalnızca createSpecification yöntemi bir dizi aldıysa tanımlanır.
Satırlardan en az birinde test yoksa, tüm suitin başarısız olacağını unutmayın. Doğru bir testLines yapılandırmasına örnek:
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, Tarayıcı Modu veya Vitest UI tarafından kullanılabilecek JSON uyumlu bir nesne oluşturur.