跳至主要內容

WebDriver Bidi 協議

這些協定命令是根據目前最新的 WebDriver Bidi 規範產生的。若要在您的測試中啟用此協定,請務必在您的功能中設定 webSocketUrl: true

請謹慎使用!

不保證瀏覽器支援,介面未來可能會變更。該標準目前正在開發中,瀏覽器供應商將根據自己的時間表新增這些功能。

最後更新時間:2024 年 10 月 28 日星期一 07:56:36 GMT+0000(協調世界時間)


send

透過 WebDriver Bidi 發送 Socket 命令

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.send(params)
參數
名稱類型詳細資訊
paramsCommandDataSocket 酬載
傳回
  • <Object> CommandResponse: WebDriver Bidi 回應

sendAsync

透過 WebDriver Bidi 發送非同步 Socket 命令

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.sendAsync(params)
參數
名稱類型詳細資訊
paramsCommandDataSocket 酬載
傳回
  • <Number> id: WebDriver Bidi 請求的 ID

sessionStatus

WebDriver Bidi 命令,用於傳送帶有參數的命令方法「session.status」。

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.sessionStatus(params)
參數
名稱類型詳細資訊
paramsremote.EmptyParams
{}
傳回
  • <Object> local.SessionStatusResult: 具有以下介面的命令傳回值
    {
    ready: boolean;
    message: string;
    }

sessionNew

WebDriver Bidi 命令,用於傳送帶有參數的命令方法「session.new」。

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.sessionNew(params)
參數
名稱類型詳細資訊
paramsremote.SessionNewParameters
{
capabilities: SessionCapabilitiesRequest;
}
傳回
  • <Object> local.SessionNewResult: 具有以下介面的命令傳回值
    {
    sessionId: string;
    capabilities: {
    acceptInsecureCerts: boolean;
    browserName: string;
    browserVersion: string;
    platformName: string;
    setWindowRect: boolean;
    userAgent: string;
    proxy?: SessionProxyConfiguration;
    webSocketUrl?: string;
    };
    }

sessionEnd

WebDriver Bidi 命令,用於傳送帶有參數的命令方法「session.end」。

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.sessionEnd(params)
參數
名稱類型詳細資訊
paramsremote.EmptyParams
{}

sessionSubscribe

WebDriver Bidi 命令,用於傳送帶有參數的命令方法「session.subscribe」。

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.sessionSubscribe(params)
參數
名稱類型詳細資訊
paramsremote.SessionSubscriptionRequest
{
events: string[];
contexts?: BrowsingContextBrowsingContext[];
}

sessionUnsubscribe

WebDriver Bidi 命令,用於傳送帶有參數的命令方法「session.unsubscribe」。

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.sessionUnsubscribe(params)
參數
名稱類型詳細資訊
paramsremote.SessionSubscriptionRequest
{
events: string[];
contexts?: BrowsingContextBrowsingContext[];
}

browserClose

WebDriver Bidi 命令,用於傳送帶有參數的命令方法「browser.close」。

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.browserClose(params)
參數
名稱類型詳細資訊
paramsremote.EmptyParams
{}

browserCreateUserContext

WebDriver Bidi 命令,用於傳送帶有參數的命令方法「browser.createUserContext」。

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.browserCreateUserContext(params)
參數
名稱類型詳細資訊
paramsremote.EmptyParams
{}
傳回
  • <Object> local.BrowserCreateUserContextResult: 具有以下介面的命令傳回值
    ;

browserGetUserContexts

WebDriver Bidi 命令,用於傳送帶有參數的命令方法「browser.getUserContexts」。

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.browserGetUserContexts(params)
參數
名稱類型詳細資訊
paramsremote.EmptyParams
{}
傳回
  • <Object> local.BrowserGetUserContextsResult: 具有以下介面的命令傳回值
    {
    userContexts: BrowserUserContextInfo[];
    }

browserRemoveUserContext

WebDriver Bidi 命令,用於傳送帶有參數的命令方法「browser.removeUserContext」。

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.browserRemoveUserContext(params)
參數
名稱類型詳細資訊
paramsremote.BrowserRemoveUserContextParameters
{
userContext: BrowserUserContext;
}

browsingContextActivate

WebDriver Bidi 命令,用於傳送帶有參數的命令方法「browsingContext.activate」。

WebDriver Bidi 協定命令。更多詳細資訊請參閱官方協定文件

用法
browser.browsingContextActivate(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextActivateParameters
{
context: BrowsingContextBrowsingContext;
}

browsingContextCaptureScreenshot

WebDriver Bidi 命令,用於傳送帶有參數的命令方法「browsingContext.captureScreenshot」。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.browsingContextCaptureScreenshot(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextCaptureScreenshotParameters
{
context: BrowsingContextBrowsingContext;
/**
* @default 'viewport'
*/
origin?: "viewport" | "document";
format?: BrowsingContextImageFormat;
clip?: BrowsingContextClipRectangle;
}
回傳值
  • <物件> local.BrowsingContextCaptureScreenshotResult: 指令回傳值,具有以下介面
    {
    data: string;
    }

browsingContextClose

WebDriver Bidi 指令,用於發送帶有參數的 "browsingContext.close" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.browsingContextClose(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextCloseParameters
{
context: BrowsingContextBrowsingContext;
promptUnload?: boolean;
}

browsingContextCreate

WebDriver Bidi 指令,用於發送帶有參數的 "browsingContext.create" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.browsingContextCreate(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextCreateParameters
{
type: BrowsingContextCreateType;
referenceContext?: BrowsingContextBrowsingContext;
background?: boolean;
userContext?: BrowserUserContext;
}
回傳值
  • <物件> local.BrowsingContextCreateResult: 指令回傳值,具有以下介面
    {
    context: BrowsingContextBrowsingContext;
    }

browsingContextGetTree

WebDriver Bidi 指令,用於發送帶有參數的 "browsingContext.getTree" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.browsingContextGetTree(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextGetTreeParameters
{
maxDepth?: JsUint;
root?: BrowsingContextBrowsingContext;
}
回傳值
  • <物件> local.BrowsingContextGetTreeResult: 指令回傳值,具有以下介面
    {
    contexts: BrowsingContextInfoList;
    }

browsingContextHandleUserPrompt

WebDriver Bidi 指令,用於發送帶有參數的 "browsingContext.handleUserPrompt" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.browsingContextHandleUserPrompt(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextHandleUserPromptParameters
{
context: BrowsingContextBrowsingContext;
accept?: boolean;
userText?: string;
}

browsingContextLocateNodes

WebDriver Bidi 指令,用於發送帶有參數的 "browsingContext.locateNodes" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.browsingContextLocateNodes(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextLocateNodesParameters
{
context: BrowsingContextBrowsingContext;
locator: BrowsingContextLocator;
maxNodeCount?: JsUint;
serializationOptions?: ScriptSerializationOptions;
startNodes?: ScriptSharedReference[];
}
回傳值
  • <物件> local.BrowsingContextLocateNodesResult: 指令回傳值,具有以下介面
    {
    nodes: ScriptNodeRemoteValue[];
    }

browsingContextNavigate

WebDriver Bidi 指令,用於發送帶有參數的 "browsingContext.navigate" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.browsingContextNavigate(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextNavigateParameters
{
context: BrowsingContextBrowsingContext;
url: string;
wait?: BrowsingContextReadinessState;
}
回傳值
  • <物件> local.BrowsingContextNavigateResult: 指令回傳值,具有以下介面
    {
    navigation: BrowsingContextNavigation | null;
    url: string;
    }

browsingContextPrint

WebDriver Bidi 指令,用於發送帶有參數的 "browsingContext.print" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.browsingContextPrint(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextPrintParameters
{
context: BrowsingContextBrowsingContext;
background?: boolean;
margin?: BrowsingContextPrintMarginParameters;
/**
* @default 'portrait'
*/
orientation?: "portrait" | "landscape";
page?: BrowsingContextPrintPageParameters;
pageRanges?: (JsUint | string)[];
/**
* @default 1
*/
scale?: number;
/**
* @default true
*/
shrinkToFit?: boolean;
}
回傳值
  • <物件> local.BrowsingContextPrintResult: 指令回傳值,具有以下介面
    {
    data: string;
    }

browsingContextReload

WebDriver Bidi 指令,用於發送帶有參數的 "browsingContext.reload" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.browsingContextReload(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextReloadParameters
{
context: BrowsingContextBrowsingContext;
ignoreCache?: boolean;
wait?: BrowsingContextReadinessState;
}

browsingContextSetViewport

WebDriver Bidi 指令,用於發送帶有參數的 "browsingContext.setViewport" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.browsingContextSetViewport(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextSetViewportParameters
{
context: BrowsingContextBrowsingContext;
viewport?: BrowsingContextViewport | null;
devicePixelRatio?: number | null;
}

browsingContextTraverseHistory

WebDriver Bidi 指令,用於發送帶有參數的 "browsingContext.traverseHistory" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.browsingContextTraverseHistory(params)
參數
名稱類型詳細資訊
paramsremote.BrowsingContextTraverseHistoryParameters
{
context: BrowsingContextBrowsingContext;
delta: JsInt;
}

networkAddIntercept

WebDriver Bidi 指令,用於發送帶有參數的 "network.addIntercept" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.networkAddIntercept(params)
參數
名稱類型詳細資訊
paramsremote.NetworkAddInterceptParameters
{
phases: NetworkInterceptPhase[];
contexts?: BrowsingContextBrowsingContext[];
urlPatterns?: NetworkUrlPattern[];
}
回傳值
  • <物件> local.NetworkAddInterceptResult: 指令回傳值,具有以下介面
    {
    intercept: NetworkIntercept;
    }

networkContinueRequest

WebDriver Bidi 指令,用於發送帶有參數的 "network.continueRequest" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.networkContinueRequest(params)
參數
名稱類型詳細資訊
paramsremote.NetworkContinueRequestParameters
{
request: NetworkRequest;
body?: NetworkBytesValue;
cookies?: NetworkCookieHeader[];
headers?: NetworkHeader[];
method?: string;
url?: string;
}

networkContinueResponse

WebDriver Bidi 指令,用於發送帶有參數的 "network.continueResponse" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.networkContinueResponse(params)
參數
名稱類型詳細資訊
paramsremote.NetworkContinueResponseParameters
{
request: NetworkRequest;
cookies?: NetworkSetCookieHeader[];
credentials?: NetworkAuthCredentials;
headers?: NetworkHeader[];
reasonPhrase?: string;
statusCode?: JsUint;
}

networkContinueWithAuth

WebDriver Bidi 指令,用於發送帶有參數的 "network.continueWithAuth" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.networkContinueWithAuth(params)
參數
名稱類型詳細資訊
paramsremote.NetworkContinueWithAuthParameters
{
request: NetworkRequest;
}

networkFailRequest

WebDriver Bidi 指令,用於發送帶有參數的 "network.failRequest" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.networkFailRequest(params)
參數
名稱類型詳細資訊
paramsremote.NetworkFailRequestParameters
{
request: NetworkRequest;
}

networkProvideResponse

WebDriver Bidi 指令,用於發送帶有參數的 "network.provideResponse" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.networkProvideResponse(params)
參數
名稱類型詳細資訊
paramsremote.NetworkProvideResponseParameters
{
request: NetworkRequest;
body?: NetworkBytesValue;
cookies?: NetworkSetCookieHeader[];
headers?: NetworkHeader[];
reasonPhrase?: string;
statusCode?: JsUint;
}

networkRemoveIntercept

WebDriver Bidi 指令,用於發送帶有參數的 "network.removeIntercept" 指令方法。

WebDriver Bidi 協議指令。更多詳細資訊請參閱官方協議文件

用法
browser.networkRemoveIntercept(params)
參數
名稱類型詳細資訊
paramsremote.NetworkRemoveInterceptParameters
{
intercept: NetworkIntercept;
}

scriptAddPreloadScript

WebDriver Bidi 命令,用於傳送帶有參數的 "script.addPreloadScript" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.scriptAddPreloadScript(params)
參數
名稱類型詳細資訊
paramsremote.ScriptAddPreloadScriptParameters
{
functionDeclaration: string;
arguments?: ScriptChannelValue[];
contexts?: BrowsingContextBrowsingContext[];
sandbox?: string;
}
回傳值
  • <物件> local.ScriptAddPreloadScriptResult: 帶有以下介面的命令回傳值
    {
    script: ScriptPreloadScript;
    }

scriptDisown

WebDriver Bidi 命令,用於傳送帶有參數的 "script.disown" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.scriptDisown(params)
參數
名稱類型詳細資訊
paramsremote.ScriptDisownParameters
{
handles: ScriptHandle[];
target: ScriptTarget;
}

scriptCallFunction

WebDriver Bidi 命令,用於傳送帶有參數的 "script.callFunction" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.scriptCallFunction(params)
參數
名稱類型詳細資訊
paramsremote.ScriptCallFunctionParameters
{
functionDeclaration: string;
awaitPromise: boolean;
target: ScriptTarget;
arguments?: ScriptLocalValue[];
resultOwnership?: ScriptResultOwnership;
serializationOptions?: ScriptSerializationOptions;
this?: ScriptLocalValue;
userActivation?: boolean;
}

scriptEvaluate

WebDriver Bidi 命令,用於傳送帶有參數的 "script.evaluate" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.scriptEvaluate(params)
參數
名稱類型詳細資訊
paramsremote.ScriptEvaluateParameters
{
expression: string;
target: ScriptTarget;
awaitPromise: boolean;
resultOwnership?: ScriptResultOwnership;
serializationOptions?: ScriptSerializationOptions;
userActivation?: boolean;
}
回傳值
  • <物件> local.ScriptEvaluateResult: 帶有以下介面的命令回傳值
    ;

scriptGetRealms

WebDriver Bidi 命令,用於傳送帶有參數的 "script.getRealms" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.scriptGetRealms(params)
參數
名稱類型詳細資訊
paramsremote.ScriptGetRealmsParameters
{
context?: BrowsingContextBrowsingContext;
type?: ScriptRealmType;
}
回傳值
  • <物件> local.ScriptGetRealmsResult: 帶有以下介面的命令回傳值
    {
    realms: ScriptRealmInfo[];
    }

scriptRemovePreloadScript

WebDriver Bidi 命令,用於傳送帶有參數的 "script.removePreloadScript" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.scriptRemovePreloadScript(params)
參數
名稱類型詳細資訊
paramsremote.ScriptRemovePreloadScriptParameters
{
script: ScriptPreloadScript;
}

storageGetCookies

WebDriver Bidi 命令,用於傳送帶有參數的 "storage.getCookies" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.storageGetCookies(params)
參數
名稱類型詳細資訊
paramsremote.StorageGetCookiesParameters
{
filter?: StorageCookieFilter;
partition?: StoragePartitionDescriptor;
}
回傳值
  • <物件> local.StorageGetCookiesResult: 帶有以下介面的命令回傳值
    {
    cookies: NetworkCookie[];
    partitionKey: StoragePartitionKey;
    }

storageSetCookie

WebDriver Bidi 命令,用於傳送帶有參數的 "storage.setCookie" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.storageSetCookie(params)
參數
名稱類型詳細資訊
paramsremote.StorageSetCookieParameters
{
cookie: StoragePartialCookie;
partition?: StoragePartitionDescriptor;
}
回傳值
  • <物件> local.StorageSetCookieResult: 帶有以下介面的命令回傳值
    {
    partitionKey: StoragePartitionKey;
    }

storageDeleteCookies

WebDriver Bidi 命令,用於傳送帶有參數的 "storage.deleteCookies" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.storageDeleteCookies(params)
參數
名稱類型詳細資訊
paramsremote.StorageDeleteCookiesParameters
{
filter?: StorageCookieFilter;
partition?: StoragePartitionDescriptor;
}
回傳值
  • <物件> local.StorageDeleteCookiesResult: 帶有以下介面的命令回傳值
    {
    partitionKey: StoragePartitionKey;
    }

inputPerformActions

WebDriver Bidi 命令,用於傳送帶有參數的 "input.performActions" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.inputPerformActions(params)
參數
名稱類型詳細資訊
paramsremote.InputPerformActionsParameters
{
context: BrowsingContextBrowsingContext;
actions: InputSourceActions[];
}

inputReleaseActions

WebDriver Bidi 命令,用於傳送帶有參數的 "input.releaseActions" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.inputReleaseActions(params)
參數
名稱類型詳細資訊
paramsremote.InputReleaseActionsParameters
{
context: BrowsingContextBrowsingContext;
}

inputSetFiles

WebDriver Bidi 命令,用於傳送帶有參數的 "input.setFiles" 方法。

WebDriver Bidi 協議命令。更多詳細資訊請參閱官方協議文件

用法
browser.inputSetFiles(params)
參數
名稱類型詳細資訊
paramsremote.InputSetFilesParameters
{
context: BrowsingContextBrowsingContext;
element: ScriptSharedReference;
files: string[];
}

歡迎!請問有什麼可以幫您?

WebdriverIO AI Copilot