Automator

Automator 模块提供了启动及连接开发者工具的方法。

方法

automator.connect

连接开发者工具。

  1. automator.connect(options: Object): Promise<MiniProgram>

options 字段定义如下:

字段类型必填默认值说明
wsEndpointstring-开发者工具 WebSocket 地址

开发者工具开启自动化功能可以通过命令行调用。

--auto <project_root>:打开指定项目并开启自动化功能。

--auto-port <port>:指定自动化监听端口。

  1. cli --auto /Users/username/demo --auto-port 9420

关于命令行调用的使用说明,可点此查看。

示例代码:

  1. automator.connect({
  2. wsEndpoint: 'ws://localhost:9420'
  3. }).then(async miniProgram => {
  4. const page = await miniProgram.navigateTo('/page/component/index')
  5. await page.setData({})
  6. })

automator.launch

启动并连接开发者工具。

确保工具安全设置中已开启 CLI/HTTP 调用功能。

  1. automator.launch(options: Object): Promise<MiniProgram>

options 字段定义如下:

字段类型必填默认值说明
cliPathstring-开发者工具命令行工具绝对路径
projectPathstring-项目绝对路径
timeoutnumber30000启动最长等待时间
portnumber-WebSocket 端口号
accountstring-用户 openid
projectConfigObject-覆盖 project.config.json 中的配置

cliPath 未设置时将会在以下几个位置尝试寻找:

  • Mac:/Applications/wechatwebdevtools.app/Contents/MacOS/cli
  • Win:C:/Program Files (x86)/Tencent/微信web开发者工具/cli.bat

account 可以使用多账号调试中已添加的用户打开项目窗口,与 miniProgram.testAccounts 接口配合使用。

示例代码:

  1. automator.launch({
  2. cliPath: 'path/to/cli',
  3. projectPath: 'path/to/project',
  4. projectConfig: {
  5. setting: {
  6. autoAudits: true,
  7. },
  8. },
  9. }).then(async miniProgram => {
  10. const page = await miniProgram.navigateTo('/page/component/index')
  11. await page.setData({})
  12. })

接下来的示例代码为方便会省略 launch 参数传递。