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

Giriş

Tarayıcı Modu Neden Kullanılır?

Tarayıcı Modu

Yapılandırma

Tarayıcı Yapılandırma Referansı

Playwright'ı Yapılandırma

WebdriverIO Yapılandırması

API

Bağlam API

Etkileşim API'si

Konumlandırıcılar

Doğrulama API

Komutlar

Kılavuz

Çoklu Kurulumlar

Vitest'i Yapılandırma

Test API Referansları

Gelişmiş API

Bu sayfada

Bağlam API ​

Vitest, @vitest/browser/context giriş noktası aracılığıyla bir bağlam modülü sunar. 2.0 sürümünden itibaren, testlerinizde size faydalı olabilecek bir dizi yardımcı program sağlar.

userEvent ​

TIP

userEvent API'si Etkileşim API'si bölümünde ayrıntılı olarak açıklanmıştır.

ts
/**
 * Kullanıcı etkileşimleri için bir işleyici. Destek, tarayıcı sağlayıcısı (`playwright` veya `webdriverio`) tarafından sağlanır.
 * `preview` sağlayıcısı ile kullanıldığında, `@testing-library/user-event` aracılığıyla simüle edilmiş olaylara geri döner.
 * @experimental
 */
export const userEvent: {
  setup: () => UserEvent;
  cleanup: () => Promise<void>;
  click: (element: Element, options?: UserEventClickOptions) => Promise<void>;
  dblClick: (
    element: Element,
    options?: UserEventDoubleClickOptions
  ) => Promise<void>;
  tripleClick: (
    element: Element,
    options?: UserEventTripleClickOptions
  ) => Promise<void>;
  selectOptions: (
    element: Element,
    values: HTMLElement | HTMLElement[] | string | string[],
    options?: UserEventSelectOptions
  ) => Promise<void>;
  keyboard: (text: string) => Promise<void>;
  type: (
    element: Element,
    text: string,
    options?: UserEventTypeOptions
  ) => Promise<void>;
  clear: (element: Element) => Promise<void>;
  tab: (options?: UserEventTabOptions) => Promise<void>;
  hover: (element: Element, options?: UserEventHoverOptions) => Promise<void>;
  unhover: (element: Element, options?: UserEventHoverOptions) => Promise<void>;
  fill: (
    element: Element,
    text: string,
    options?: UserEventFillOptions
  ) => Promise<void>;
  dragAndDrop: (
    source: Element,
    target: Element,
    options?: UserEventDragAndDropOptions
  ) => Promise<void>;
};

commands ​

TIP

Bu API, Komutlar API'si bölümünde ayrıntılı olarak açıklanmıştır.

ts
/**
 * Tarayıcı için kullanılabilir komutlar.
 * `server.commands` için bir kısayoldur.
 */
export const commands: BrowserCommands;

page ​

page dışa aktarımı, mevcut sayfa ile etkileşim kurmak için yardımcı programlar sağlar.

WARNING

Playwright'ın page nesnesinden bazı yardımcı programlar sağlasa da, bu nesne Playwright'ın kendi page nesnesiyle aynı değildir. Tarayıcı bağlamı tarayıcıda çalıştığı için, testleriniz Playwright'ın page nesnesine doğrudan erişemez çünkü o sunucuda çalışır.

Playwright'ın page nesnesine erişmeniz gerekiyorsa Komutlar API'si kullanın.

ts
export const page: {
  /**
   * iframe'in görünüm alanının boyutunu değiştirir.
   */
  viewport(width: number, height: number): Promise<void>;
  /**
   * Test iframe'inin veya belirli bir öğenin ekran görüntüsünü alır.
   * @returns Ekran görüntüsü dosyasının yolu veya yolu ve base64 verisi.
   */
  screenshot(
    options: Omit<ScreenshotOptions, 'base64'> & { base64: true }
  ): Promise<{
    path: string;
    base64: string;
  }>;
  screenshot(options?: ScreenshotOptions): Promise<string>;
  /**
   * Varsayılan `page` nesnesini özel yöntemlerle genişletir.
   */
  extend(methods: Partial<BrowserPage>): BrowserPage;
  /**
   * Bir HTML öğesini bir `Locator` içine sarar. Öğeler sorgulanırken, arama her zaman bu öğeyi döndürecektir.
   */
  elementLocator(element: Element): Locator;

  /**
   * Locator API'leri. Daha fazla ayrıntı için belgelerine bakınız.
   */
  getByRole(role: ARIARole | string, options?: LocatorByRoleOptions): Locator;
  getByLabelText(text: string | RegExp, options?: LocatorOptions): Locator;
  getByTestId(text: string | RegExp): Locator;
  getByAltText(text: string | RegExp, options?: LocatorOptions): Locator;
  getByPlaceholder(text: string | RegExp, options?: LocatorOptions): Locator;
  getByText(text: string | RegExp, options?: LocatorOptions): Locator;
  getByTitle(text: string | RegExp, options?: LocatorOptions): Locator;
};

TIP

getBy* API'si Bulucular API'si bölümünde açıklanmıştır.

UYARI 3.2.0+

save false olarak ayarlanırsa screenshot'ın her zaman bir base64 dizesi döndüreceğini unutmayın. Bu durumda path değeri dikkate alınmaz.

cdp ​

cdp dışa aktarımı, mevcut Chrome Geliştirici Araçları Protokolü oturumunu döndürür. Çoğunlukla kütüphane yazarları için üzerine araçlar geliştirmek amacıyla kullanışlıdır.

WARNING

CDP oturumu yalnızca playwright sağlayıcısıyla ve yalnızca chromium tarayıcısı kullanılırken çalışır. Bu konuda daha fazla bilgiyi Playwright'ın CDPSession belgelerinde bulabilirsiniz.

ts
export const cdp: () => CDPSession;

server ​

server dışa aktarımı, Vitest sunucusunun çalıştığı Node.js ortamını temsil eder. Çoğunlukla hata ayıklama veya testlerinizi ortama göre sınırlamak için kullanışlıdır.

ts
export const server: {
  /**
   * Vitest sunucusunun çalıştığı platformu.
   * Sunucuda `process.platform` çağrılmasıyla aynıdır.
   */
  platform: Platform;
  /**
   * Vitest sunucusunun çalışma zamanı sürümünü.
   * Sunucuda `process.version` çağrılmasıyla aynıdır.
   */
  version: string;
  /**
   * Tarayıcı sağlayıcısının adı.
   */
  provider: string;
  /**
   * Mevcut tarayıcının adı.
   */
  browser: string;
  /**
   * Tarayıcı için kullanılabilir komutları.
   */
  commands: BrowserCommands;
  /**
   * Serileştirilmiş test yapılandırmasını.
   */
  config: SerializedConfig;
};
Pager
Önceki sayfaWebdriverIO Yapılandırması
Sonraki sayfaEtkileşim API'si

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

Copyright (c) 2021-Present Vitest Team

https://vitest.dev/guide/browser/context

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

Copyright (c) 2021-Present Vitest Team