UNPKG

@serenity-js/webdriverio

Version:

Adapter that integrates @serenity-js/web with the latest stable version of WebdriverIO, enabling Serenity/JS reporting and using the Screenplay Pattern to write web and mobile test scenarios

53 lines 2.57 kB
import 'webdriverio'; import { URL } from 'node:url'; import { type Discardable } from '@serenity-js/core'; import type { CorrelationId } from '@serenity-js/core/lib/model/index.js'; import type { Cookie, CookieData, ModalDialogHandler, PageElements, Selector } from '@serenity-js/web'; import { Key, Page, PageElement } from '@serenity-js/web'; import type { WebdriverIOBrowsingSession } from './WebdriverIOBrowsingSession.js'; import type { WebdriverIOErrorHandler } from './WebdriverIOErrorHandler.js'; /** * WebdriverIO-specific implementation of [`Page`](https://serenity-js.org/api/web/class/Page/). * * @group Models */ export declare class WebdriverIOPage extends Page<WebdriverIO.Element> implements Discardable { private readonly browser; private readonly errorHandler; private lastScriptExecutionSummary; private dehydrator; constructor(session: WebdriverIOBrowsingSession, browser: WebdriverIO.Browser, modalDialogHandler: ModalDialogHandler, errorHandler: WebdriverIOErrorHandler, pageId: CorrelationId); createPageElement(nativeElement: WebdriverIO.Element): PageElement<WebdriverIO.Element>; locate(selector: Selector): PageElement<WebdriverIO.Element>; locateAll(selector: Selector): PageElements<WebdriverIO.Element>; navigateTo(destination: string): Promise<void>; navigateBack(): Promise<void>; navigateForward(): Promise<void>; reload(): Promise<void>; sendKeys(keys: Array<Key | string>): Promise<void>; executeScript<Result, InnerArguments extends any[]>(script: string | ((...parameters: InnerArguments) => Result), ...args: InnerArguments): Promise<Result>; executeAsyncScript<Result, Parameters extends any[]>(script: string | ((...args: [...parameters: Parameters, callback: (result: Result) => void]) => void), ...args: Parameters): Promise<Result>; lastScriptExecutionResult<Result = any>(): Result; takeScreenshot(): Promise<string>; cookie(name: string): Promise<Cookie>; setCookie(cookieData: CookieData): Promise<void>; deleteAllCookies(): Promise<void>; title(): Promise<string>; name(): Promise<string>; url(): Promise<URL>; viewportSize(): Promise<{ width: number; height: number; }>; setViewportSize(size: { width: number; height: number; }): Promise<void>; close(): Promise<void>; closeOthers(): Promise<void>; isPresent(): Promise<boolean>; private resetState; discard(): Promise<void>; private inContextOfThisPage; } //# sourceMappingURL=WebdriverIOPage.d.ts.map