通过向 instrumentation runner 指定不同的参数来配置基准测试的行为。这些参数可以应用于您的 Gradle 配置,也可以在从命令行运行 instrumentation 时直接添加。
要在从 Android Studio 运行基准测试时设置 instrumentation 参数,请执行以下操作
- 点击**编辑**并选择要编辑的配置来编辑运行配置。
- 点击**Instrumentation 参数**字段旁边的 来编辑 instrumentation 参数。
- 点击 并添加所需的 instrumentation 参数。
additionalTestOutputDir
配置在设备上保存 JSON 基准测试报告和分析结果的位置。
- 参数类型:文件路径字符串
- 默认为:测试 APK 的外部目录
androidx.benchmark.dryRunMode.enable
允许您以单循环模式运行基准测试,以验证其是否正常工作。
这意味着
- 配置错误 不强制执行(例如,为了更容易在模拟器上运行常规正确性测试)
- 基准测试只运行单循环,没有预热
- 不捕获测量结果和跟踪,以减少运行时间
这针对测试吞吐量和验证基准测试逻辑(而非构建和测量正确性)进行了优化。
- 参数类型:布尔值
- 默认为:
false
androidx.benchmark.iterations
覆盖时间驱动的目标迭代次数,以帮助确保一致的工作量。这通常仅在启用分析时才有用,以帮助确保在比较不同实现或运行时,在分析跟踪中执行一致数量的工作。在其他情况下,这可能会降低测量的准确性或稳定性。
- 参数类型:整数
- 默认为:未指定
androidx.benchmark.junit4.SideEffectRunListener
如果在基准测试运行期间执行了无关的后台工作,您可能会得到不一致的基准测试结果。
要在基准测试期间禁用后台工作,请将listener
instrumentation 参数类型设置为androidx.benchmark.junit4.SideEffectRunListener
。
- 参数类型:字符串
- 可用选项
androidx.benchmark.junit4.SideEffectRunListener
- 默认为:未指定
androidx.benchmark.output.enable
启用将结果 JSON 文件写入外部存储。
- 参数类型:布尔值
- 默认值:
true
androidx.benchmark.profiling.mode
允许在运行基准测试时捕获跟踪文件。有关可用选项,请参阅分析微基准测试。
- 参数类型:字符串
- 可用选项
MethodTracing
StackSampling
None
- 默认值:
None
androidx.benchmark.suppressErrors
接受逗号分隔的错误列表,将其转换为警告。
- 参数类型:字符串列表
- 可用选项
DEBUGGABLE
LOW-BATTERY
EMULATOR
CODE-COVERAGE
UNLOCKED
SIMPLEPERF
ACTIVITY-MISSING
- 默认值:空列表
androidx.benchmark.startupMode.enable (已弃用)
重新配置循环行为以支持在启动期间对代码进行基准测试。基准测试在没有预热循环的情况下执行 10 次测量。为了最大限度地减少微基准测试中的开销,禁用循环平均。
- 参数类型:布尔值
- 默认为:
false
为您推荐
- 注意:当 JavaScript 关闭时显示链接文本
- 宏基准测试检测参数
- 分析微基准测试
- 创建基线配置文件 {:#creating-profile-rules}