# @appium/execute-driver-plugin 中文文档

规范地址：https://npmcn.com/package/%40appium/execute-driver-plugin/

版本：8\.0\.0
npm 元数据更新时间：2026-11-15T13:58:56.287Z
中文译文更新时间：2026-11-14T21:51:54.333Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40appium/execute-driver-plugin
原文对照：https://npmcn.com/package/%40appium/execute-driver-plugin/?lang=original
项目主页：https://appium.io/
源码仓库：https://github.com/appium/appium

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：130 kB，29 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：^22\.22\.2 \|\| ^24\.15\.0 \|\| \>=26\.0\.0
- 运行依赖：2 个
- peer 依赖：appium ^4\.0\.0-beta\.0
- 首次发布：2022-01-22T00:11:13.325Z
- 最新版本发布：2026-11-15T13:58:55.952Z
- 近 30 天下载量：77475（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：83（近 12 个月 24 个）

## 中文简介

批量和执行 Appium 驱动命令的插件

## 安装

```sh
npm install @appium/execute-driver-plugin
```

也可以使用：`pnpm add @appium/execute-driver-plugin`、`yarn add @appium/execute-driver-plugin`、`bun add @appium/execute-driver-plugin`

## README

# @ appium/ execute- driver- plugin (英语)

> 运行子进程驱动脚本的 Appium 插件

[![NPM version](https://img.shields.io/npm/v/@appium/execute-driver-plugin.svg)](https://npmjs.org/package/@appium/execute-driver-plugin) [![Downloads](https://img.shields.io/npm/dm/@appium/execute-driver-plugin.svg)](https://npmjs.org/package/@appium/execute-driver-plugin)

这个插件增加了一个新的服务器端点,允许在子进程执行脚本. 目前, 唯一支持的驱动程序类型是 `webdriverio`因此,剧本也必须用联署材料写出.

## 动机

在子进程中运行驱动脚本会增加一定的平行度, 这可能导致 更快的测试执行.

> \[尖叫声\] 此插件允许执行任意 JavaScript 代码 。 我们建议只在受控环境中使用此插件 。 脚本运行在一个节点.js `vm` 上下文对 WebdriverIO 驱动程序进行了硬化视图(host-realm 原型元数据未曝光),但 `vm` 仍然不是未信任代码的完整安全边界; 将此插件视为高度特权 .

## 安装

```
appium plugin install execute-driver
```

## 使用量

和所有插件一样,这个插件在启动Appium服务器时必须明确被激活. 自兹 输入脚本可以是任意 JavaScript, 这是 [一个不安全的特征](https://appium.io/docs/en/latest/guides/security/), (中文(简体) ), 还必须明确允许:

```
appium --use-plugins=execute-driver --allow-insecure=<driver>:execute_driver_script
```

一旦插件运行,您就可以调用新命令 :

```js
// JavaScript (WebdriverIO)
const script = `return await driver.getTimeouts();`;
const {result, logs} = await driver.executeDriverScript(script);
// 'result' contains the data returned by the script (in this case, the response to 'getTimeouts')
// 'logs' contains everything logged to console during script execution
```

参见您的 Appium 客户端文档, 以了解脚本执行命令的确切语法 .

自插件版本以来 `6.0.0`,脚本也可以使用 `setTimeout`编号 :`clearTimeout` 方法, 允许使用无条件的延迟:

```js
// this will take around one second to execute
const script = `return await new Promise((resolve) => setTimeout(resolve, 1000));`;
```

## API 密码

[参见Appium文件](https://appium.io/docs/en/latest/reference/api/plugins/#execute-driver-plugin)。 。 。 .

## 许可证

阿帕奇 - 2.0

## 常见问题

### @appium/execute-driver-plugin 是什么？

批量和执行 Appium 驱动命令的插件

### 如何安装 @appium/execute-driver-plugin？

在项目目录运行 npm install @appium/execute-driver-plugin，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：appium（^4\.0\.0-beta\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @appium/execute-driver-plugin 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @appium/execute-driver-plugin 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @appium/execute-driver-plugin 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js ^22\.22\.2 \|\| ^24\.15\.0 \|\| \>=26\.0\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @appium/execute-driver-plugin 可以商用吗？

@appium/execute-driver-plugin 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @appium/execute-driver-plugin 的下载量有多少？

根据 npm 官方下载统计，@appium/execute-driver-plugin 在 2026/10/07 – 2026/11/05 这 30 天内被下载 77,475 次，日均约 2,583 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @appium/execute-driver-plugin 还在维护吗？

最新版本 8\.0\.0 发布于 2026/11/15（今天）；至今共发布 83 个版本，其中过去 12 个月发布了 24 个；首次发布于 2022/01/22。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

