本指南介绍如何使用 Firebase 控制台中的 App Distribution 自动化测试助手功能将 build 自动分发给测试人员。自动化测试助手功能可为您的应用提供随时准备就绪、简单易用的冒烟测试工具。
准备工作
将 Firebase 添加到您的 Android 项目(如果尚未添加)。
如果您没有使用任何其他 Firebase 产品,只需创建一个项目并注册应用即可。但是,如果您决定将来使用其他产品,请务必完成使用 Firebase 控制台添加 Firebase 中的所有步骤。
当您准备好将应用的预发布版本分发给测试人员时,应按照常规流程构建您的 APK。您必须使用调试密钥或应用签名密钥对 APK 进行签名。
使用 Firebase 控制台将应用分发给自动化测试助手
如需将您的应用分发给自动化测试助手,请使用 Firebase 控制台上传 APK 文件:
- 打开 Firebase 控制台的“App Distribution”页面。出现提示时,选择您的 Firebase 项目。
- 在版本页面上,从下拉菜单中选择您要分发的应用。
- 将应用的 APK 文件拖到控制台中以便上传。
- 上传完成后,选择添加测试人员或测试群组搜索栏中的自动化测试助手。
- 如需自定义自动化测试,请点击修改图标,然后选择自定义您的自动化测试对话框中的自定义设置。
- (可选)在设备配置对话框中,选择符合您的测试规范的 API 级别、设备屏幕方向和语言区域。
- (可选)如果应用需要登录凭据,请点击登录凭据下拉菜单,创建可在测试期间使用的自定义用户名和密码。
- 点击分发。您还可以为应用添加可选版本说明。
使用 Firebase CLI 将应用分发给自动化测试助手
运行 appdistribution:distribute
命令以上传您的应用并将其分发给测试人员。使用以下参数配置分发给自动化测试助手功能:
appdistribution:distribute 选项 | |
---|---|
--test-devices 或 --test-devices-file
|
您要将 build 分发给自动化测试助手功能的测试设备。 您可以采用以英文分号分隔的测试设备列表的形式指定测试设备: --test-devices: "model=shiba, version=34, locale=en, orientation=portrait;model=b0q, version=33, locale=en, orientation=portrait"
或者,您可以指定一个纯文本文件的路径,该文件包含以英文分号分隔的测试设备列表: --test-devices-file: "/path/to/test-devices.txt"
|
--test-username
|
在自动化测试期间要使用的自动登录的用户名。 |
--test-password 或 --test-password-file
|
在自动化测试期间要使用的自动登录的密码。 或者,您可以指定一个纯文本文件的路径,该文件包含密码: --test-password-file: "/path/to/test-password.txt"
|
--test-username-resource
|
在自动化测试期间要使用的自动登录的用户名字段的资源名称。 |
--test-password-resource
|
在自动化测试期间要使用的自动登录的密码字段的资源名称。 |
--test-non-blocking |
异步运行自动化测试。访问 Firebase 控制台查看自动测试结果。 |
如需详细了解如何开始使用 Firebase CLI 以及配置分发的不同方式,请参阅使用 Firebase CLI 将 Android 应用分发给测试人员。
使用 Gradle 将应用分发给自动化测试助手
您可以通过添加至少一个 firebaseAppDistribution
部分来配置 App Distribution,并使用以下参数配置分发给自动化测试助手功能:
App Distribution Build 参数 | |
---|---|
testDevices 或 testDevicesFile
|
您要使用自动化测试向其分发 build 的测试设备。 您可以采用以英文分号分隔的设备规格列表的形式指定测试设备: testDevices="model=shiba, version=34, locale=en, orientation=portrait;model=b0q, version=33, locale=en, orientation=portrait"
或者,您可以指定一个文件的路径,该文件包含以英文分号分隔的设备规格列表: testDevicesFile="/path/to/testDevices.txt"
|
testUsername
|
在自动化测试期间要使用的自动登录的用户名。 |
testUsernameResource
|
在自动化测试期间要使用的自动登录的用户名字段的资源名称。 |
testPassword 或 testPasswordFile
|
在自动化测试期间要使用的自动登录的密码。 或者,您可以指定一个纯文本文件的路径,该文件包含密码: testPasswordFile="/path/to/testPassword.txt" |
testPasswordResource
|
在自动化测试期间要使用的自动登录的密码字段的资源名称。 |
testNonBlocking |
异步运行自动化测试。访问 Firebase 控制台查看自动测试结果。 |
如需详细了解如何开始使用 Gradle 以及配置分发的不同方式,请参阅使用 Gradle 将 Android 应用分发给测试人员。
使用 Fastlane 将应用分发给自动化测试助手
在 ./fastlane/Fastfile
通道中,添加 firebase_app_distribution
代码块。使用以下参数配置分发给自动化测试助手功能:
firebase_app_distribution 参数 | |
---|---|
test_devices 或 test_devices_file
|
您要将 build 分发给自动化测试助手功能的测试设备。您可以采用以英文分号分隔的测试设备列表的形式指定测试设备: test_devices: "model=shiba, version=34, locale=en, orientation=portrait;model=b0q, version=33, locale=en, orientation=portrait"
或者,您可以指定一个纯文本文件的路径,该文件包含以英文分号分隔的测试设备列表: test_devices_file: "/path/to/test-devices.txt"
|
test_username
|
在自动化测试期间要使用的自动登录的用户名。 |
test_password 或 test_password_file
|
在自动化测试期间要使用的自动登录的密码。 或者,您可以指定一个纯文本文件的路径,该文件包含密码: test_password_file: "/path/to/test-password.txt"
|
test_username_resource
|
在自动化测试期间要使用的自动登录的用户名字段的资源名称。 |
test_password_resource
|
在自动化测试期间要使用的自动登录的密码字段的资源名称。 |
test_non_blocking |
异步运行自动化测试。访问 Firebase 控制台查看自动测试结果。 |
如需详细了解如何开始使用 Fastlane 以及配置分发的不同方式,请参阅使用 Fastlane 将 Android 应用分发给测试人员。
自动测试抓取状态
为帮助您解读测试结果,自动化测试结果标签页会显示每个设备的任何测试问题、应用屏幕截图以及测试抓取视频。您可以在测试结果页面中找到测试的状态:
抓取状态 | 说明 |
---|---|
待处理 | 自动测试仍在运行,结果很快就会显示。 |
已通过 | 自动测试已成功抓取应用,未发现任何崩溃问题。 |
失败 | 由于应用在测试期间崩溃,自动测试失败。 |
无结论 | 由于基础架构错误,自动测试失败。 |