Skip to content
Vitest 3
Main Navigation Kılavuz & APIYapılandırmaTarayıcı ModuGelişmiş API
3.2.0
2.1.9
1.6.1
0.34.6

Türkçe

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

Türkçe

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

Görünüm

Sidebar Navigation

API

Node API

Gelişmiş API

Vitest API

Test Projesi

TestSpecification

Test Task API

TestCase

TestSuite

TestModule

TestCollection

Eklenti API'si

Çalıştırıcı API'si

Raporlayıcılar

Görev Meta Verileri

Kılavuz

Testleri Çalıştırma

Raporlayıcıları Genişletme

Özel Havuz

Vitest'i Yapılandırma

Test API Referansları

Bu sayfada

Gelişmiş API ​

WARNING

Bu kılavuz, Node.js betikleri aracılığıyla testleri çalıştırmak için gelişmiş API'leri listeler. Yalnızca testleri çalıştırmak istiyorsanız, muhtemelen buna ihtiyacınız yoktur. Öncelikli olarak kütüphane yazarları tarafından kullanılır.

vitest/node giriş noktasından herhangi bir yöntemi içe aktarabilirsiniz.

startVitest ​

ts
function startVitest(
  mode: VitestRunMode,
  cliFilters: string[] = [],
  options: CliOptions = {},
  viteOverrides?: ViteUserConfig,
  vitestOptions?: VitestOptions
): Promise<Vitest>;

Vitest testlerini Node API'si ile çalıştırmaya başlayabilirsiniz:

js
import { startVitest } from 'vitest/node';

const vitest = await startVitest('test');

await vitest.close();

startVitest fonksiyonu, testler başlatılabiliyorsa bir Vitest örneği döndürür.

İzleme modu etkin değilse, Vitest close yöntemini otomatik olarak çağırır.

İzleme modu etkinse ve terminal TTY'yi destekliyorsa, Vitest konsol kısayollarını kaydeder.

İkinci argüman olarak bir filtre listesi verebilirsiniz. Vitest, dosya yolunda iletilen dizelerden en az birini içeren testleri çalıştırır.

Ek olarak, üçüncü argümanı CLI argümanlarını geçmek için kullanabilirsiniz; bu, herhangi bir test yapılandırma seçeneğini geçersiz kılar. Alternatif olarak, dördüncü argüman olarak tam Vite yapılandırmasını geçirebilirsiniz; bu, diğer kullanıcı tanımlı seçeneklerden öncelikli olur.

Testleri çalıştırdıktan sonra, sonuçları state.getTestModules API'sinden alabilirsiniz:

ts
import type { TestModule } from 'vitest/node';

const vitest = await startVitest('test');

console.log(vitest.state.getTestModules()); // [TestModule]

TIP

"Testleri Çalıştırma" kılavuzunda bir kullanım örneği bulunmaktadır.

createVitest ​

ts
function createVitest(
  mode: VitestRunMode,
  options: CliOptions,
  viteOverrides: ViteUserConfig = {},
  vitestOptions: VitestOptions = {}
): Promise<Vitest>;

createVitest fonksiyonunu kullanarak bir Vitest örneği oluşturabilirsiniz. startVitest ile aynı Vitest örneğini döndürür, ancak testleri başlatmaz ve yüklü paketleri doğrulamaz.

js
import { createVitest } from 'vitest/node';

const vitest = await createVitest('test', {
  watch: false,
});

TIP

"Testleri Çalıştırma" kılavuzunda bir kullanım örneği bulunmaktadır.

resolveConfig ​

ts
function resolveConfig(
  options: UserConfig = {},
  viteOverrides: ViteUserConfig = {}
): Promise<{
  vitestConfig: ResolvedConfig;
  viteConfig: ResolvedViteConfig;
}>;

Bu yöntem, yapılandırmayı özel parametrelerle çözümler. Parametre verilmediğinde, root değeri process.cwd() olur.

ts
import { resolveConfig } from 'vitest/node';

// vitestConfig yalnızca çözümlenmiş "test" özelliklerini içerir
const { vitestConfig, viteConfig } = await resolveConfig({
  mode: 'custom',
  configFile: false,
  resolve: {
    conditions: ['custom'],
  },
  test: {
    setupFiles: ['/my-setup-file.js'],
    pool: 'threads',
  },
});

INFO

Vite'ın createServer'ının çalışma şekli nedeniyle, Vitest yapılandırmayı eklentinin configResolve kancası sırasında çözümlemek zorundadır. Bu nedenle, bu yöntem dahili olarak kullanılmaz; yalnızca genel bir API olarak sunulmaktadır.

Yapılandırmayı startVitest veya createVitest API'lerine geçirirseniz, Vitest yapılandırmayı tekrar çözer.

WARNING

resolveConfig projeleri çözümlemez. Proje yapılandırmalarını çözümlemek için Vitest'in kurulmuş bir Vite sunucusuna ihtiyacı vardır.

Ayrıca viteConfig.test'in tam olarak çözümlenmeyeceğini unutmayın. Vitest yapılandırmasına ihtiyacınız varsa, bunun yerine vitestConfig'i kullanın.

parseCLI ​

ts
function parseCLI(
  argv: string | string[],
  config: CliParseOptions = {}
): {
  filter: string[];
  options: CliOptions;
};

Bu yöntemi CLI argümanlarını ayrıştırmak amacıyla kullanabilirsiniz. Bir dize (argümanların tek bir boşlukla ayrıldığı) veya Vitest CLI'nin kullandığı aynı biçimde bir dizeler dizisi kabul eder. Sonrasında createVitest veya startVitest yöntemlerine geçirebileceğiniz bir filtre ve options döndürür.

ts
import { parseCLI } from 'vitest/node';

const result = parseCLI('vitest ./files.ts --coverage --browser=chrome');

result.options;
// {
//   coverage: { enabled: true },
//   browser: { name: 'chrome', enabled: true }
// }

result.filter;
// ['./files.ts']
Pager
Sonraki sayfaVitest API

MIT Lisansı altında yayınlanmıştır.

Copyright (c) 2021-Present Vitest Team

https://vitest.dev/advanced/

MIT Lisansı altında yayınlanmıştır.

Copyright (c) 2021-Present Vitest Team