Skip to content
Vitest 2
Main Navigation PrůvodceAPIKonfiguraceRežim prohlížečePokročilý
3.2.0
2.1.9
1.6.1
0.34.6

čeština

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

čeština

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

Vzhled

Sidebar Navigation

Why Browser Mode?

Getting Started

Context API

Interactivity API

Locators

Assertion API

Commands API

Na této stránce

Context API ​

Vitest zpřístupňuje kontextový modul prostřednictvím vstupního bodu @vitest/browser/context. Od verze 2.0 poskytuje malou sadu nástrojů, které mohou být užitečné při testování.

userEvent ​

TIP

API userEvent je podrobně vysvětleno v Interactivity API.

ts
/**
 * Obsluha pro uživatelské interakce. Podpora je implementována poskytovatelem prohlížeče (`playwright` nebo `webdriverio`).
 * Při použití s poskytovatelem `preview` přepne na simulované události prostřednictvím `@testing-library/user-event`.
 * @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

Toto API je podrobně vysvětleno v Commands API.

ts
/**
 * Dostupné příkazy pro prohlížeč.
 * Zkratka k `server.commands`.
 */
export const commands: BrowserCommands;

page ​

Export page poskytuje nástroje pro interakci s aktuální stránkou.

WARNING

I když zpřístupňuje některé nástroje z objektu page Playwrightu, není to stejný objekt. Jelikož je kontext prohlížeče spouštěn v prohlížeči, vaše testy nemají přístup k objektu page Playwrightu, protože ten běží na serveru.

Pokud potřebujete mít přístup k objektu page Playwrightu, použijte Commands API.

ts
export const page: {
  /**
   * Změní velikost viewportu iframe.
   */
  viewport(width: number, height: number): Promise<void>;
  /**
   * Pořídí snímek obrazovky testovacího iframe nebo konkrétního prvku.
   * @returns Cesta k souboru snímku obrazovky, nebo cesta a base64.
   */
  screenshot(
    options: Omit<ScreenshotOptions, 'base64'> & { base64: true }
  ): Promise<{
    path: string;
    base64: string;
  }>;
  screenshot(options?: ScreenshotOptions): Promise<string>;
  /**
   * Rozšíří výchozí objekt `page` o vlastní metody.
   */
  extend(methods: Partial<BrowserPage>): BrowserPage;
  /**
   * Zabalí HTML prvek do `Locatoru`. Při dotazování na prvky pomocí tohoto lokátoru bude vyhledávání vždy vracet tento prvek.
   */
  elementLocator(element: Element): Locator;

  /**
   * API pro Locator. Další podrobnosti naleznete v jeho dokumentaci.
   */
  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

API getBy* je vysvětleno v Locators API.

cdp ​

Export cdp vrací aktuální relaci protokolu Chrome DevTools. Je především užitečný pro autory knihoven k vytváření nástrojů na jeho základě.

WARNING

Relace CDP funguje pouze s poskytovatelem playwright a při použití prohlížeče chromium. Více si o tom můžete přečíst v dokumentaci Playwrightu k CDPSession.

ts
export const cdp: () => CDPSession;

server ​

Export server představuje prostředí Node.js, ve kterém běží server Vitest. Je většinou užitečný pro ladění nebo omezení vašich testů na základě prostředí.

ts
export const server: {
  /**
   * Platforma, na které běží server Vitest.
   * Stejné jako volání `process.platform` na straně serveru.
   */
  platform: Platform;
  /**
   * Verze runtime serveru Vitest.
   * Stejné jako volání `process.version` na straně serveru.
   */
  version: string;
  /**
   * Název poskytovatele prohlížeče.
   */
  provider: string;
  /**
   * Název aktuálního prohlížeče.
   */
  browser: string;
  /**
   * Dostupné příkazy pro prohlížeč.
   */
  commands: BrowserCommands;
  /**
   * Serializovaná konfigurace testu.
   */
  config: SerializedConfig;
};
Pager
Předchozí stránkaGetting Started
Další stránkaInteractivity API

Vydáno pod licencí MIT.

Copyright (c) 2021-Present Vitest Team

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

Vydáno pod licencí MIT.

Copyright (c) 2021-Present Vitest Team