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.