编写一个测试 (JS)
要在 JavaScript(Node.js)中编写 Appium 测试,我们需要选择一个与 Appium 兼容的客户端 库。维护最好的库和 Appium 团队推荐使用的库是 WebdriverIO, 所有就让我们使用它吧。既然我们已经安装了 Appium,我们 已经满足了 Node 和 NPM 的要求。因此,只需在计算机上创建一个新的项目目录 然后在其中初始化一个新的 Node.js 项目:
您在提示中输入什么内容并不重要,只要您最终得到一个有效的
package.json
.
现在,通过 NPM 安装 webdriverio
软件包:
完成上述操作后,您的 package.json
文件应包含类似以下内容的部分:
现在是编写测试本身的时候了。创建一个名为 test.js
的新文件,内容如下:
test.js
const {remote} = require('webdriverio');
const capabilities = {
platformName: 'Android',
'appium:automationName': 'UiAutomator2',
'appium:deviceName': 'Android',
'appium:appPackage': 'com.android.settings',
'appium:appActivity': '.Settings',
};
const wdOpts = {
hostname: process.env.APPIUM_HOST || 'localhost',
port: parseInt(process.env.APPIUM_PORT, 10) || 4723,
logLevel: 'info',
capabilities,
};
async function runTest() {
const driver = await remote(wdOpts);
try {
const batteryItem = await driver.$('//*[@text="Battery"]');
await batteryItem.click();
} finally {
await driver.pause(1000);
await driver.deleteSession();
}
}
runTest().catch(console.error);
注意
本指南的范围不包括完整介绍 WebdriverIO 客户端 库或这里发生的一切,因此我们暂且不对代码本身进行详细解释。 所以目前我们暂时不对代码本身进行详细解释。您可能需要特别阅读 Appium 能力, 除了熟悉优秀的 WebdriverIO 文档 来获得更全面的解释, 你还可以看到的各种 API 命令以及用途。
注意
示例代码可从 GitHub Appium repository.
基本上,这段代码正在执行以下操作:
- 定义一组 "Capabilities" 能力值(参数),以便 Appium 知道您想自动执行哪种任务。 要自动执行的任务。
- 在内置的 Android 设置应用程序上启动 Appium 会话。
- 找到 "Battery"列表项并点击它。
- 停顿片刻,纯粹是为了观察自动化视觉效果。
- 结束 Appium 会话。
就是这样!让我们试一试吧。运行测试前,请确保您的 Appium 服务器 在另一个终端会话中运行,否则会出现一个有关无法连接到 Appium 服务器的错误。 然后,你就可以执行脚本了:
如果一切顺利,在应用再次关闭之前,你会看到 "设置 "应用打开并导航到 "Battery "视图
恭喜您,您已经开始了 Appium 之旅!请继续阅读一些 下一步骤 继续探索.