测试

Android 测试。

此表列出了androidx.test组中的所有构件。

构件 稳定版本 候选版本 Beta 版本 Alpha 版本
annotation 1.0.1 - - 1.1.0-alpha04
core 1.6.1 - - -
espresso 3.6.1 - - -
espresso-device 1.0.1 - - -
ext.junit 1.2.1 - - -
ext:junit-gtest - - - 1.0.0-alpha01
ext.truth 1.6.0 - - -
monitor 1.7.2 - - -
orchestrator 1.5.1 - - -
runner 1.6.2 - - -
rules 1.6.1 - - -
services 1.5.0 - - -
此库上次更新于:2024 年 10 月 15 日

声明依赖项

要添加对 androidx.test 的依赖项,必须将 Google Maven 存储库添加到您的项目中。阅读Google 的 Maven 存储库以了解更多信息。

在应用或模块的build.gradle文件中添加所需构件的依赖项

Groovy

dependencies {
    // To use the androidx.test.core APIs
    androidTestImplementation "androidx.test:core:1.6.1"
    // Kotlin extensions for androidx.test.core
    androidTestImplementation "androidx.test:core-ktx:1.6.1"

    // To use the androidx.test.espresso
    androidTestImplementation "androidx.test.espresso:espresso-core:3.6.1"

    // To use the JUnit Extension APIs
    androidTestImplementation "androidx.test.ext:junit:1.2.1"
    // Kotlin extensions for androidx.test.ext.junit
    androidTestImplementation "androidx.test.ext:junit-ktx:1.2.1"

    // To use the Truth Extension APIs
    androidTestImplementation "androidx.test.ext:truth:1.6.0"

    // To use the androidx.test.runner APIs
    androidTestImplementation "androidx.test:runner:1.6.2"

    // To use android test orchestrator
    androidTestUtil "androidx.test:orchestrator:1.5.1"

}

Kotlin

dependencies {
    // To use the androidx.test.core APIs
    androidTestImplementation("androidx.test:core:1.6.1")
    // Kotlin extensions for androidx.test.core
    androidTestImplementation("androidx.test:core-ktx:1.6.1")

    // To use the androidx.test.espresso
    androidTestImplementation("androidx.test.espresso:espresso-core:3.6.1")

    // To use the JUnit Extension APIs
    androidTestImplementation("androidx.test.ext:junit:1.2.1")
    // Kotlin extensions for androidx.test.ext.junit
    androidTestImplementation("androidx.test.ext:junit-ktx:1.2.1")

    // To use the Truth Extension APIs
    androidTestImplementation("androidx.test.ext:truth:1.6.0")

    // To use the androidx.test.runner APIs
    androidTestImplementation("androidx.test:runner:1.6.2")

    // To use android test orchestrator
    androidTestUtil("androidx.test:orchestrator:1.5.1")
}

有关依赖项的更多信息,请参阅添加构建依赖项

反馈

您的反馈有助于改进 Jetpack。如果您发现新的问题或有改进此库的想法,请告诉我们。在创建新问题之前,请查看此库中现有问题。您可以通过点击星号按钮为现有问题添加您的投票。

创建新问题

有关更多信息,请参阅问题跟踪器文档

Annotation 1.1.0

Annotation 1.1.0-alpha04

2024 年 4 月 26 日

androidx.test:annotation:1.1.0-alpha04}已发布。

Annotation 1.1.0-alpha03

2024 年 1 月 26 日

androidx.test:annotation:1.1.0-alpha03}已发布。

API 变更

  • 取消隐藏 ExperimentalTestApi

Annotation 1.1.0-alpha02

2023 年 11 月 29 日

androidx.test:annotation:1.1.0-alpha02}已发布。

API 变更

  • minSdkVersion 现在为 19,targetSdkVersion 现在为 34

新功能

Annotation 1.1.0-alpha01

2023 年 3 月 21 日

已发布 androidx.test:annotation:1.1.0-alpha01

依赖项更改

  • 更新至 Kotlin stdlib 1.7.22
  • 主要版本工具链更新:现在编译为 Java 8 字节码

Annotation 1.0.1

Annotation 1.0.1

2022年11月8日

已发布 androidx.test:annotation:1.0.1

自 1.0.0 版本以来的更改包括

依赖项更改

  • 更新至 Kotlin stdlib 1.7.10

Annotation 1.0.1-rc01

2022年10月26日

已发布 androidx.test:annotation:1.0.1-rc01

Annotation 1.0.1-beta01

2022年10月6日

已发布 androidx.test:annotation:1.0.1-beta01

依赖项更改

  • 更新至 Kotlin stdlib 1.7.10

Annotation 1.0.1-alpha01

2022年6月1日

已发布 androidx.test:annotation:1.0.1-alpha01

错误修复

  • 回滚到 javac 11 以防止 IncompatibleClassChangeErrors [#1351]

Annotation 1.0.0

Annotation 1.0.0

2021年12月13日

已发布 androidx.test:annotation:1.0.0

新的构件,目前用于内部 androidx.test 使用。

Annotation 1.0.0-rc01

2021年11月18日

已发布 androidx.test:annotation:1.0.0-rc01

Annotation 1.0.0-beta01

2021年11月8日

已发布 androidx.test:annotation:1.0.0-beta01

Annotation 1.0.0-alpha02

2021年10月4日

已发布 androidx.test:annotation:1.0.0-alpha02

Annotation 1.0.0-alpha01

2021年9月28日

已发布 androidx.test:annotation:1.0.0-alpha01

API 变更

  • 添加新的 ExperimentalTestApi 和 InternalTestApi 注解

Core 1.6.1

Core Core-ktx 1.6.1

2024年6月26日

已发布 androidx.test:core:1.6.1androidx.test:core-ktx:1.6.1

Core Core-ktx 1.6.0

2024年6月24日

已发布 androidx.test:core:1.6.0androidx.test:core-ktx:1.6.0

自上次稳定版本 1.5.0 以来的更改包括

API 变更

  • 添加 ApplicationInfoBuilder.setFlags(int)
  • 添加新的低级别屏幕截图 API:View.captureToBitmap、WindowCapture.captureToBitmap、Bitmap.writeToTestStorage 和 DeviceCapture.takeScreenshot 屏幕截图。

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项
  • 修复使用 ActivityScenario#launchActivityForResult 和隐式 Intent 的问题
  • 更新 Activity Scenario 参考文档以修复缺少的链接
  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)
  • 参考文档清理 - 记录以前缺少的参数,修复链接等
  • 当 targetSdk >= 34 时,活动启动会自动选择加入以允许后台活动启动
  • 修复 ActivityScenario#recreate 期间 Activity#isChangingConfigurations 错误为 false 的问题

新功能

  • 构件现在已签名。请参阅验证依赖项以了解更多详情。
  • 主要版本工具链更新:现在编译为 Java 8 字节码

Core Core-ktx 1.6.0-rc01

2024年5月30日

已发布 androidx.test:core:1.6.0-rc01androidx.test:core-ktx:1.6.0-rc01

Core Core-ktx 1.6.0-beta01

2024年5月16日

已发布 androidx.test:core:1.6.0-beta01androidx.test:core-ktx:1.6.0-beta01

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项
  • 回滚到 androidx.concurrent 1.1.0

Core Core-ktx 1.6.0-alpha06

2024 年 4 月 26 日

已发布 androidx.test:core:1.6.0-alpha06androidx.test:core-ktx:1.6.0-alpha06

错误修复

  • 使 ViewCapture 使用 ControlledLooper API,而不是硬编码 Robolectric 检查
  • 修复使用 ActivityScenario#launchActivityForResult 和隐式 Intent 的问题

API 变更

  • 添加 ApplicationInfoBuilder.setFlags(int)
  • 创建 ViewCapture/WindowCapture/DeviceCapture API 的挂起函数版本,
    并将现有方法重命名为返回 ListenableFutures 的 *Async 变体
  • 使 Bitmap.writeToTestStorage 使用注册的 PlatformTestStorage,而不是硬编码 TestStorage
  • 从 captureToBitmap 和 takeScreenshot API 中删除 ExperimentalTestApi/RequiresOptIn 限制

Core Core-ktx 1.6.0-alpha05

2024 年 1 月 26 日

已发布 androidx.test:core:1.6.0-alpha05androidx.test:core-ktx:1.6.0-alpha05

错误修复

  • 更新 Activity Scenario 参考文档以修复缺少的链接
  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)
  • 参考文档清理 - 记录以前缺少的参数,修复链接等

Core Core-ktx 1.6.0-alpha04

2023年12月5日

已发布 androidx.test:core:1.6.0-alpha04androidx.test:core-ktx:1.6.0-alpha04

错误修复

  • 当 targetSdk >= 34 时,活动启动会自动选择加入以允许后台活动启动

Core Core-ktx 1.6.0-alpha03

2023 年 11 月 29 日

已发布 androidx.test:core:1.6.0-alpha03androidx.test:core-ktx:1.6.0-alpha03

错误修复

  • 修复 targetSdk = 34 时 ActivityScenario.launchActivityWithResult 的问题

API 变更

  • targetSdkVersion 现在为 34

新功能

Core Core-ktx 1.6.0-alpha02

2023年9月18日

已发布 androidx.test:core:1.6.0-alpha02androidx.test:core-ktx:1.6.0-alpha02

**功能** * 更新 ViewCapture 以接受可选的 Rect,以便它可以用于 Compose。

错误修复

  • 修复 ActivityScenario#recreate 期间 Activity#isChangingConfigurations 错误为 false 的问题
  • 将 UiAutomation#takeScreenshot 调用移出主线程。
  • 修复 API >= 26 上对话框内 View 的 captureToBitmap。

**依赖项更改** * minSdkVersion 现在为 19

Core Core-ktx 1.6.0-alpha01

2023 年 3 月 21 日

已发布 androidx.test:core:1.6.0-alpha01androidx.test:core-ktx:1.6.0-alpha01

**功能** * 为 ViewCapture.captureToBitmap 添加了对 robolectric 的初步支持

错误修复

  • 修复 DecorView 的 captureToBitmap
  • 尝试通过重试 takeScreenshot 来提高 DeviceCapture 的可靠性

依赖项更改

  • 更新至 Kotlin stdlib 1.7.22
  • 主要版本工具链更新:现在编译为 Java 8 字节码
  • 更新到 androidx.test:monitor:1.70-alpha01

Core 1.5.0

Core Core-ktx 1.5.0

2022年11月8日

已发布 androidx.test:core:1.5.0androidx.test:core-ktx:1.5.0

自 1.4.0 版本以来的更改包括

新功能

  • 记录 ActivityScenario 启动和关闭的 android Trace 跨度。
  • 添加用于屏幕截图的新实验性 API。这些 API 将根据平台 API 级别自动选择最高保真度来拍摄屏幕截图,并支持自动测试设备 (ATD) 模拟器映像。
    • View.captureToBitmap 扩展函数
    • Window.captureRegionToBitmap 扩展函数
    • takeScreenshot()
  • 添加实验性 Bitmap.writeToTestStorage API

API 更改

  • 添加 ActivityScenario#launchActivityForResult API 并修改 ActivityScenario#launch 以删除 Bootstrap Activity API 的使用。此更改应提高 ActivityScenario#launch 的性能和稳定性。ActivityScenario#getResult 现在将强制执行它只能与 ActivityScenario#launchActivityForResult 一起使用

错误修复

  • 修复针对 Android 33 并在其上运行时的 ActivityScenario#launch
  • 使用 elapsedRealtime 而不是 currentTimeMillis 来跟踪 ActivityScenario 超时。
  • 修复 ActivityScenario 在自检测测试中从具有包名的 intent 启动 Activity 的问题。
  • 通过使用纯白色背景并在内部活动中禁用转换动画来减少 ActivityScenario 开销

依赖项更改

  • 更新到
    • Kotlin stdlib 1.7.10
    • androidx.lifecycle:lifecycle-common:2.3.1
    • androidx.annotation:annotation:1.2.0
  • 添加
    • androidx.test.services:storage:1.4.2
    • com.google.guava:listenablefuture:1.0
    • androidx.concurrent:concurrent-futures:1.1.0

Core Core-ktx 1.5.0-rc01

2022年10月26日

已发布 androidx.test:core:1.5.0-rc01androidx.test:core-ktx:1.5.0-rc01

Core Core-ktx 1.5.0-beta01

2022年10月6日

已发布 androidx.test:core:1.5.0-beta01androidx.test:core-ktx:1.5.0-beta01

API 更改

  • 使用 NonNull/Nullable 注解新的 API

Core Core-ktx 1.5.0-alpha02

2022年8月22日

已发布 androidx.test:core:1.5.0-alpha02androidx.test:core-ktx:1.5.0-alpha02

API 更改

  • 修改 ActivityScenario#launch 以删除 Bootstrap Activity API 的使用。此更改应提高 ActivityScenario#launch 的性能和稳定性。ActivityScenario#getResult 现在将强制执行它只能与 ActivityScenario#launchActivityForResult 一起使用

错误修复

  • 修复在 Android T 上进行目标定位和运行时的 ActivityScenario#launch
  • 使用 elapsedRealtime 而不是 currentTimeMillis 来跟踪 ActivityScenario 超时。

依赖项更改

  • 更新至 Kotlin stdlib 1.7.10

Core Core-ktx 1.5.0-alpha01

2022年6月21日

已发布 androidx.test:core:1.5.0-alpha01androidx.test:core-ktx:1.5.0-alpha01

API 更改

  • 添加 ActivityScenario#launchActivityForResult API。此 API 将在检索活动结果时替换 ActivityScenario#launch 的使用。

Core 1.4.1

Core Core-ktx 1.4.1-alpha07

2022年6月1日

已发布 androidx.test:core:1.4.1-alpha07androidx.test:core-ktx:1.4.1-alpha07

错误修复

  • 回滚到 javac 11 以防止 IncompatibleClassChangeErrors [#1351]

依赖项更改

  • 更新到 Kotlin stdlib 1.6.21

Core Core-ktx 1.4.1-alpha06

2022年4月28日

已发布 androidx.test:core:1.4.1-alpha06androidx.test:core-ktx:1.4.1-alpha06

**错误修复** * 修复 ActivityScenario 在自检测测试中从具有包名的 intent 启动 Activity 的问题。

Core Core-ktx 1.4.1-alpha05

2022年3月21日

已发布 androidx.test:core:1.4.1-alpha05androidx.test:core-ktx:1.4.1-alpha05

Core Core-ktx 1.4.1-alpha04

2022年2月11日

已发布 androidx.test:core:1.4.1-alpha04androidx.test:core-ktx:1.4.1-alpha04

新功能

  • 记录 ActivityScenario 启动和关闭的 android Trace 跨度。

依赖项更改

  • 添加 androidx.tracing 依赖项
  • 更新到 Kotlin stdlib 1.6.10

Core Core-ktx 1.4.1-alpha03

2021年10月4日

已发布 androidx.test:core:1.4.1-alpha03androidx.test:core-ktx:1.4.1-alpha03

错误修复

  • 修复 View.captureToBitmap 和 Window.captureRegionToBitmap 扩展程序的可见性
  • 为 Bitmap.writeToTestStorage 和屏幕截图方法添加更清晰的异常处理

Core Core-ktx 1.4.1-alpha02

2021年9月28日

已发布 androidx.test:core:1.4.1-alpha02androidx.test:core-ktx:1.4.1-alpha02

新功能

  • 添加用于屏幕截图的新实验性 API
    • View.captureToBitmap 扩展函数
    • Window.captureRegionToBitmap 扩展函数
    • takeScreenshot()
  • 添加实验性 Bitmap.writeToTestStorage API

依赖项更改

  • 添加对以下内容的依赖项:
    • Kotlin stdlib 1.5.31
    • androidx.test.services:storage:1.4.1-alpha02
    • com.google.guava:listenablefuture:1.0
    • androidx.concurrent:concurrent-futures:1.1.0
  • 更新依赖项版本到
    • androidx.lifecycle:lifecycle-common:2.3.1
    • androidx.annotation:annotation:1.2.0

Core Core-ktx 1.4.1-alpha01

2021年8月23日

已发布 androidx.test:core:1.4.1-alpha01androidx.test:core-ktx:1.4.1-alpha01

错误修复

  • 通过使用纯白色背景并在内部活动中禁用转换动画来减少 ActivityScenario 开销

依赖项更改

  • -ktx:显式依赖于 Kotlin stdlib 1.4.30

Espresso 3.6.1

Espresso 3.6.1

2024年6月26日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.6.1
  • androidx.test.espresso:espresso-core:3.6.1
  • androidx.test.espresso:espresso-contrib:3.6.1
  • androidx.test.espresso:espresso-idling-resource:3.6.1
  • androidx.test.espresso:espresso-intents:3.6.1
  • androidx.test.espresso:espresso-remote:3.6.1
  • androidx.test.espresso:espresso-web:3.6.1
  • androidx.test.espresso.idling:idling-concurrent:3.6.1
  • androidx.test.espresso.idling:idling-net:3.6.1

错误修复

  • 将 accessibilitytestframework 版本(返回)升级到 3.1.2。

Espresso 3.6.0

2024年6月24日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.6.0
  • androidx.test.espresso:espresso-core:3.6.0
  • androidx.test.espresso:espresso-contrib:3.6.0
  • androidx.test.espresso:espresso-idling-resource:3.6.0
  • androidx.test.espresso:espresso-intents:3.6.0
  • androidx.test.espresso:espresso-remote:3.6.0
  • androidx.test.espresso:espresso-web:3.6.0
  • androidx.test.espresso.idling:idling-concurrent:3.6.0
  • androidx.test.espresso.idling:idling-net:3.6.0

自上次稳定版本 3.5.1 以来的更改包括

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项
  • 修复 Robolectric 中 inRoot 操作缓慢的问题
  • 一致地使用 PlatformTestStorageRegistry.getInstance(),而不是传递引用
  • 移除 InteractionResponse 公共引用文档中的 TODO
  • 修复 AdapterDataLoaderAction 错误消息中的错别字
  • 将 Guava 的使用替换为 Java 集合和内联
  • 参考文档清理 - 记录以前缺少的参数,修复链接等
  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)
  • 在非远程模式下运行时,停止向后台线程发布空任务
  • 更好地处理 DefaultFailureHandler 层次结构捕获和屏幕截图过程中可能发生的异常。
  • 修复 IsPlatformPopup 的描述以匹配其行为。
  • 修复使用错误坐标的已弃用的 obtainMovement 实现。
  • 将指向 junit.org javadoc 的损坏链接替换为 @link。

API 变更

  • 添加 ViewActions.captureToBitmap
  • 向 DrawerActions 添加 waitForClose。
  • 将生成的 IInteractionExecutionStatus 类标记为 RestrictTo LIBRARY_GROUP
  • 从 RuntimePermissionStubber 中移除 ExperimentalTestApi
  • 添加一个新的 IsActivatedMatcher 来验证是否已激活。
  • 使 Espresso.onIdle() 在主线程上工作,允许从主线程中清空主线程。
  • minSdkVersion 现在为 19,targetSdkVersion 现在为 34
  • 添加 scrollTo 变体,允许滚动到 90% 以上显示的视图
  • 弃用 EspressoOptional,改用 @Nullable。
  • 允许自定义 Espresso 的默认失败处理程序,以便在失败时禁用屏幕截图

新功能

  • 构件现在已签名。请参阅验证依赖项以了解更多详情。
  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 17。这应该可以解决 IncompatibleClassChangeErrors (https://github.com/android/android-test/issues/1642)
    • 移除内部 Guava 使用,从而减小了二进制文件大小
    • 发布的 aar 文件不再经过 ProGuard 处理

Espresso 3.6.0-rc01

2024年5月30日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.6.0-rc01
  • androidx.test.espresso:espresso-core:3.6.0-rc01
  • androidx.test.espresso:espresso-contrib:3.6.0-rc01
  • androidx.test.espresso:espresso-idling-resource:3.6.0-rc01
  • androidx.test.espresso:espresso-intents:3.6.0-rc01
  • androidx.test.espresso:espresso-remote:3.6.0-rc01
  • androidx.test.espresso:espresso-web:3.6.0-rc01
  • androidx.test.espresso.idling:idling-concurrent:3.6.0-rc01
  • androidx.test.espresso.idling:idling-net:3.6.0-rc01

Espresso 3.6.0-beta01

2024年5月16日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.6.0-beta01
  • androidx.test.espresso:espresso-core:3.6.0-beta01
  • androidx.test.espresso:espresso-contrib:3.6.0-beta01
  • androidx.test.espresso:espresso-idling-resource:3.6.0-beta01
  • androidx.test.espresso:espresso-intents:3.6.0-beta01
  • androidx.test.espresso:espresso-remote:3.6.0-beta01
  • androidx.test.espresso:espresso-web:3.6.0-beta01
  • androidx.test.espresso.idling:idling-concurrent:3.6.0-beta01
  • androidx.test.espresso.idling:idling-net:3.6.0-beta01

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项

Espresso 3.6.0-alpha04

2024 年 4 月 26 日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.6.0-alpha04
  • androidx.test.espresso:espresso-core:3.6.0-alpha04
  • androidx.test.espresso:espresso-contrib:3.6.0-alpha04
  • androidx.test.espresso:espresso-idling-resource:3.6.0-alpha04
  • androidx.test.espresso:espresso-intents:3.6.0-alpha04
  • androidx.test.espresso:espresso-remote:3.6.0-alpha04
  • androidx.test.espresso:espresso-web:3.6.0-alpha04
  • androidx.test.espresso.idling:idling-concurrent:3.6.0-alpha04
  • androidx.test.espresso.idling:idling-net:3.6.0-alpha04

错误修复

  • 修复 Robolectric 中 inRoot 操作缓慢的问题
  • 一致地使用 PlatformTestStorageRegistry.getInstance(),而不是传递引用
  • 移除 InteractionResponse 公共引用文档中的 TODO

新功能

  • 向 DrawerActions 添加 waitForClose。

API 变更

  • 适应 ViewCapture API 的更改
  • 删除 ViewInteraction.captureToBitmap,改用 ViewActions.captureToBitmap,并将稳定 API 从 ExperimentalTestApi 提升。

Espresso 3.6.0-alpha03

2024 年 1 月 26 日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.6.0-alpha03
  • androidx.test.espresso:espresso-core:3.6.0-alpha03
  • androidx.test.espresso:espresso-contrib:3.6.0-alpha03
  • androidx.test.espresso:espresso-idling-resource:3.6.0-alpha03
  • androidx.test.espresso:espresso-intents:3.6.0-alpha03
  • androidx.test.espresso:espresso-remote:3.6.0-alpha03
  • androidx.test.espresso:espresso-web:3.6.0-alpha03
  • androidx.test.espresso.idling:idling-concurrent:3.6.0-alpha03
  • androidx.test.espresso.idling:idling-net:3.6.0-alpha03

错误修复

  • 修复 AdapterDataLoaderAction 错误消息中的错别字
  • 从 Espresso 的 Java 代码中移除 Kotlin collect stdlib 调用
  • 参考文档清理 - 记录以前缺少的参数,修复链接等
  • 从 Java 代码中移除 Kotlin StringKt 调用
  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)
  • 在非远程模式下运行时,停止向后台线程发布空任务
  • 更好地处理 DefaultFailureHandler 层次结构捕获和屏幕截图过程中可能发生的异常。

API 变更

  • 将生成的 IInteractionExecutionStatus 类标记为 RestrictTo LIBRARY_GROUP
  • 从 RuntimePermissionStubber 中移除 ExperimentalTestApi

Espresso 3.6.0-alpha02

2023 年 11 月 29 日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.6.0-alpha02
  • androidx.test.espresso:espresso-core:3.6.0-alpha02
  • androidx.test.espresso:espresso-contrib:3.6.0-alpha02
  • androidx.test.espresso:espresso-idling-resource:3.6.0-alpha02
  • androidx.test.espresso:espresso-intents:3.6.0-alpha02
  • androidx.test.espresso:espresso-remote:3.6.0-alpha02
  • androidx.test.espresso:espresso-web:3.6.0-alpha02
  • androidx.test.espresso.idling:idling-concurrent:3.6.0-alpha02
  • androidx.test.espresso.idling:idling-net:3.6.0-alpha02

错误修复

  • 修复 IsPlatformPopup 的描述以匹配其行为。
  • 修复使用错误坐标的已弃用的 obtainMovement 实现。
  • 将指向 junit.org javadoc 的损坏链接替换为 @link。

API 变更

  • 添加一个新的 IsActivatedMatcher 来验证是否已激活。
  • 使 Espresso.onIdle() 在主线程上工作,允许从主线程中清空主线程。
  • minSdkVersion 现在为 19,targetSdkVersion 现在为 34
  • 添加 scrollTo 变体,允许滚动到 90% 以上显示的视图

新功能

Espresso 3.6.0-alpha01

2023 年 3 月 21 日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.6.0-alpha01
  • androidx.test.espresso:espresso-core:3.6.0-alpha01
  • androidx.test.espresso:espresso-contrib:3.6.0-alpha01
  • androidx.test.espresso:espresso-idling-resource:3.6.0-alpha01
  • androidx.test.espresso:espresso-intents:3.6.0-alpha01
  • androidx.test.espresso:espresso-remote:3.6.0-alpha01
  • androidx.test.espresso:espresso-web:3.6.0-alpha01
  • androidx.test.espresso.idling:idling-concurrent:3.6.0-alpha01
  • androidx.test.espresso.idling:idling-net:3.6.0-alpha01

API 更改

  • 弃用 EspressoOptional,改用 @Nullable。
  • 允许自定义 Espresso 的默认失败处理程序,以便在失败时禁用屏幕截图

依赖项更改

  • 更新到 androidx.test:monitor:1.7.0-alpha01、androidx.test:core:1.6.0-alpha01 和 androidx.test:runner:1.6.0-alpha01
  • 更新至 Kotlin stdlib 1.7.22
  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 11。这应该可以解决 IncompatibleClassChangeErrors (https://github.com/android/android-test/issues/1642)
    • 使用 Kotlin stdlib 移除内部 Guava 使用,从而减小了二进制文件大小
    • 发布的 aar 文件不再经过 ProGuard 处理

Espresso 3.5.0

Espresso 3.5.1

2023年1月3日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.1
  • androidx.test.espresso:espresso-core:3.5.1
  • androidx.test.espresso:espresso-contrib:3.5.1
  • androidx.test.espresso:espresso-idling-resource:3.5.1
  • androidx.test.espresso:espresso-intents:3.5.1
  • androidx.test.espresso:espresso-remote:3.5.1
  • androidx.test.espresso:espresso-web:3.5.1
  • androidx.test.espresso.idling:idling-concurrent:3.5.1
  • androidx.test.espresso.idling:idling-net:3.5.1

错误修复

  • 引用文档清理:更正参数名称并从 IdlingThreadPoolExecutor 和 UriIdlingResource 中移除过时的“beta”语句

依赖项更改

  • 更新到 androidx.test:monitor:1.6.1,支持在 Espresso 测试失败时保存屏幕截图,无需测试存储

Espresso 3.5.0

2022年11月8日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.0
  • androidx.test.espresso:espresso-core:3.5.0
  • androidx.test.espresso:espresso-contrib:3.5.0
  • androidx.test.espresso:espresso-idling-resource:3.5.0
  • androidx.test.espresso:espresso-intents:3.5.0
  • androidx.test.espresso:espresso-remote:3.5.0
  • androidx.test.espresso:espresso-web:3.5.0
  • androidx.test.espresso.idling:idling-concurrent:3.5.0
  • androidx.test.espresso.idling:idling-net:3.5.0

新功能

  • 记录 Espresso 操作的 android Trace 跨度
  • Espresso 的 DefaultFailureHandler 现在将测试失败时的屏幕截图保存到 TestStorage
  • 添加实验性 ViewInteraction.captureToBitmap 扩展函数
  • 在失败时将视图层次结构保存到文件

API 更改

  • 将 ViewMatchers hasTextColor 和 hasBackground 提升为稳定 API
  • 添加 IntentsRule
  • 为 IntentMatchers.hasExtraWithKey() 和 BundleMatchers.hasKey() 添加反向匹配器。
  • 添加一个 ViewAction,用于滚动到 RecyclerView 中的最后一个位置。
  • 添加 IntentMatcher.hasExtra API

错误修复

  • 保留向上事件的工具类型
  • 使 IdlingRegistry 更线程安全。
  • 支持 scrollTo() 的其他视图
  • 移除 Robolectric 上每次 Espresso 交互时不必要的 interruptEspressoTasks 警告日志。
  • 在 Robolectric 下运行时移除 CloseKeyboardAction 中的超时。
  • 为输入手势注入使用一致的 InputDevice 源。
  • 支持在 Espresso Intents 中模拟 ActivityNotFoundExceptions。
  • 当异常消息过大时截断视图层次结构。
  • 显示模棱两可匹配视图的数量和列表。
  • 验证 onView.check/perform() 是否在 UI 线程上调用

依赖项更改

  • 更新到
    • Kotlin stdlib 1.7.10
    • jsr305:2.0.2
    • tagsoup:1.2.1
    • androidx.annotation:1.2.0
  • contrib
    • 更新到 drawer 1.1.1、recycler view 1.2.1、material 1.4.0

Espresso 3.5.0-rc01

2022年10月26日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.0-rc01
  • androidx.test.espresso:espresso-core:3.5.0-rc01
  • androidx.test.espresso:espresso-contrib:3.5.0-rc01
  • androidx.test.espresso:espresso-idling-resource:3.5.0-rc01
  • androidx.test.espresso:espresso-intents:3.5.0-rc01
  • androidx.test.espresso:espresso-remote:3.5.0-rc01
  • androidx.test.espresso:espresso-web:3.5.0-rc01
  • androidx.test.espresso.idling:idling-concurrent:3.5.0-rc01
  • androidx.test.espresso.idling:idling-net:3.5.0-rc01

Espresso 3.5.0-beta02

2022年10月21日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.0-beta02
  • androidx.test.espresso:espresso-core:3.5.0-beta02
  • androidx.test.espresso:espresso-contrib:3.5.0-beta02
  • androidx.test.espresso:espresso-idling-resource:3.5.0-beta02
  • androidx.test.espresso:espresso-intents:3.5.0-beta02
  • androidx.test.espresso:espresso-remote:3.5.0-beta02
  • androidx.test.espresso:espresso-web:3.5.0-beta02
  • androidx.test.espresso.idling:idling-concurrent:3.5.0-beta02
  • androidx.test.espresso.idling:idling-net:3.5.0-beta02

API 更改

  • 将 ViewMatchers hasTextColor 和 hasBackground 提升为稳定 API

错误修复

  • 修复 scrollTo 中的 recyclerview ClassNotFoundExceptions

依赖项更改

Espresso 3.5.0-beta01

2022年10月6日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.0-beta01
  • androidx.test.espresso:espresso-core:3.5.0-beta01
  • androidx.test.espresso:espresso-contrib:3.5.0-beta01
  • androidx.test.espresso:espresso-idling-resource:3.5.0-beta01
  • androidx.test.espresso:espresso-intents:3.5.0-beta01
  • androidx.test.espresso:espresso-remote:3.5.0-beta01
  • androidx.test.espresso:espresso-web:3.5.0-beta01
  • androidx.test.espresso.idling:idling-concurrent:3.5.0-beta01
  • androidx.test.espresso.idling:idling-net:3.5.0-beta01

API 更改

  • 使用 NonNull/Nullable 注释自 3.4.0 以来引入的新 API
  • 添加 IntentsRule API

错误修复

  • 使 IdlingRegistry 更线程安全。
  • 支持 scrollTo() 的其他视图

依赖项更改

  • 更新至 Kotlin stdlib 1.7.10
  • 更新到 jsr305:2.0.2
  • 更新到 tagsoup:1.2.1

Espresso 3.5.0-alpha07

2022年6月1日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.0-alpha07
  • androidx.test.espresso:espresso-core:3.5.0-alpha07
  • androidx.test.espresso:espresso-contrib:3.5.0-alpha07
  • androidx.test.espresso:espresso-idling-resource:3.5.0-alpha07
  • androidx.test.espresso:espresso-intents:3.5.0-alpha07
  • androidx.test.espresso:espresso-remote:3.5.0-alpha07
  • androidx.test.espresso:espresso-web:3.5.0-alpha07
  • androidx.test.espresso.idling:idling-concurrent:3.5.0-alpha07
  • androidx.test.espresso.idling:idling-net:3.5.0-alpha07

错误修复

  • 回滚到 javac 11 以防止 IncompatibleClassChangeErrors [#1351]

依赖项更改

  • 更新到 Kotlin stdlib 1.6.21

Espresso 3.5.0-alpha06

2022年4月28日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.0-alpha06
  • androidx.test.espresso:espresso-core:3.5.0-alpha06
  • androidx.test.espresso:espresso-contrib:3.5.0-alpha06
  • androidx.test.espresso:espresso-idling-resource:3.5.0-alpha06
  • androidx.test.espresso:espresso-intents:3.5.0-alpha06
  • androidx.test.espresso:espresso-remote:3.5.0-alpha06
  • androidx.test.espresso:espresso-web:3.5.0-alpha06
  • androidx.test.espresso.idling:idling-concurrent:3.5.0-alpha06
  • androidx.test.espresso.idling:idling-net:3.5.0-alpha06

错误修复

  • 移除 Robolectric 上每次 Espresso 交互时不必要的 interruptEspressoTasks 警告日志。

Espresso 3.5.0-alpha05

2022年3月21日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.0-alpha05
  • androidx.test.espresso:espresso-core:3.5.0-alpha05
  • androidx.test.espresso:espresso-contrib:3.5.0-alpha05
  • androidx.test.espresso:espresso-idling-resource:3.5.0-alpha05
  • androidx.test.espresso:espresso-intents:3.5.0-alpha05
  • androidx.test.espresso:espresso-remote:3.5.0-alpha05
  • androidx.test.espresso:espresso-web:3.5.0-alpha05
  • androidx.test.espresso.idling:idling-concurrent:3.5.0-alpha05
  • androidx.test.espresso.idling:idling-net:3.5.0-alpha05

错误修复

  • 在 Robolectric 下运行时移除 CloseKeyboardAction 中的超时。

Espresso 3.5.0-alpha04

2022年2月11日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.0-alpha04
  • androidx.test.espresso:espresso-core:3.5.0-alpha04
  • androidx.test.espresso:espresso-contrib:3.5.0-alpha04
  • androidx.test.espresso:espresso-idling-resource:3.5.0-alpha04
  • androidx.test.espresso:espresso-intents:3.5.0-alpha04
  • androidx.test.espresso:espresso-remote:3.5.0-alpha04
  • androidx.test.espresso:espresso-web:3.5.0-alpha04
  • androidx.test.espresso.idling:idling-concurrent:3.5.0-alpha04
  • androidx.test.espresso.idling:idling-net:3.5.0-alpha04

API 变更

  • 为 IntentMatchers.hasExtraWithKey() 和 BundleMatchers.hasKey() 添加反向匹配器。
  • 添加一个 ViewAction,用于滚动到 RecyclerView 中的最后一个位置。

新功能

  • 记录 Espresso 操作的 android Trace 跨度

错误修复

  • 为输入手势注入使用一致的 InputDevice 源。
  • 支持在 Espresso Intents 中模拟 ActivityNotFoundExceptions。
  • 当异常消息过大时截断视图层次结构。
  • 显示模棱两可匹配视图的数量和列表。

依赖项更改

  • 更新到 Kotlin stdlib 1.6.10

Espresso 3.5.0-alpha03

2021年10月4日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.0-alpha03
  • androidx.test.espresso:espresso-core:3.5.0-alpha03
  • androidx.test.espresso:espresso-contrib:3.5.0-alpha03
  • androidx.test.espresso:espresso-idling-resource:3.5.0-alpha03
  • androidx.test.espresso:espresso-intents:3.5.0-alpha03
  • androidx.test.espresso:espresso-remote:3.5.0-alpha03
  • androidx.test.espresso:espresso-web:3.5.0-alpha03
  • androidx.test.espresso.idling:idling-concurrent:3.5.0-alpha03
  • androidx.test.espresso.idling:idling-net:3.5.0-alpha03

新功能

  • Espresso 的 DefaultFailureHandler 现在将测试失败时的屏幕截图保存到 TestStorage

错误修复

  • 修复 ViewInteraction.captureToBitmap 的可见性和功能
  • 验证 onView.check/perform() 是否在 UI 线程上调用

Espresso 3.5.0-alpha02

2021年9月28日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.0-alpha02
  • androidx.test.espresso:espresso-core:3.5.0-alpha02
  • androidx.test.espresso:espresso-contrib:3.5.0-alpha02
  • androidx.test.espresso:espresso-idling-resource:3.5.0-alpha02
  • androidx.test.espresso:espresso-intents:3.5.0-alpha02
  • androidx.test.espresso:espresso-remote:3.5.0-alpha02
  • androidx.test.espresso:espresso-web:3.5.0-alpha02
  • androidx.test.espresso.idling:idling-concurrent:3.5.0-alpha02
  • androidx.test.espresso.idling:idling-net:3.5.0-alpha02

新功能

  • 添加实验性 ViewInteraction.captureToBitmap 扩展函数

依赖项更改

  • 全部
    • 更新到 androidx.annotation:1.2.0
  • core
    • 更新到 Kotlin stdlib 1.5.31
  • contrib
    • 更新到 drawer 1.1.1、recycler view 1.2.1、material 1.4.0

Espresso 3.5.0-alpha01

2021年8月23日

已发布以下构件

  • androidx.test.espresso:espresso-accessibility:3.5.0-alpha01
  • androidx.test.espresso:espresso-core:3.5.0-alpha01
  • androidx.test.espresso:espresso-contrib:3.5.0-alpha01
  • androidx.test.espresso:espresso-idling-resource:3.5.0-alpha01
  • androidx.test.espresso:espresso-intents:3.5.0-alpha01
  • androidx.test.espresso:espresso-remote:3.5.0-alpha01
  • androidx.test.espresso:espresso-web:3.5.0-alpha01
  • androidx.test.espresso.idling:idling-concurrent:3.5.0-alpha01
  • androidx.test.espresso.idling:idling-net:3.5.0-alpha01

新功能

  • 在失败时将视图层次结构保存到文件

API 变更

  • 添加 IntentMatcher.hasExtra API

依赖项更改

  • core:依赖于 Kotlin stdlib 1.4.30

Espresso Device 1.0.1

Espresso Device 1.0.1

2024年6月26日

androidx.test.espresso:espresso-device:1.0.1 已发布。

Espresso Device 1.0.0

2024年6月24日

androidx.test.espresso:espresso-device:1.0.0 已发布。

首个版本!

新功能

  • 用于旋转和折叠设备的 API
  • 用于根据设备模式和显示屏过滤测试的 API

Espresso Device 1.0.0-rc01

2024年5月30日

androidx.test.espresso:espresso-device:1.0.0-rc01 已发布。

错误修复

  • 添加了对使用多个已恢复活动设置屏幕方向的支持
  • 修复了设置屏幕方向和折叠模式时的并发修改问题

Espresso Device 1.0.0-beta01

2024年5月16日

androidx.test.espresso:espresso-device:1.0.0-beta01 已发布。

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项

Espresso Device 1.0.0-alpha09

2024 年 4 月 26 日

androidx.test.espresso:espresso-device:1.0.0-alpha09 已发布。

**错误修复** * 阐明了在没有恢复活动的情况下设置屏幕方向的错误消息 * 支持在半折叠的 API 34 物理设备上设置屏幕方向

API 变更

  • 使 ScreenOrientationRule 的 defaultOrientation 参数可选

Espresso 设备 1.0.0-alpha08

2024 年 1 月 26 日

androidx.test.espresso:espresso-device:1.0.0-alpha08 已发布。

错误修复

  • 当进程没有 INTERNET 权限时,添加更好的错误消息
  • 使 Espresso 设备文档中的异常类引用成为可点击链接

API 变更 * 从 androidx.test.filter.CustomFilter 中移除 ExperimentalTestApi

Espresso 设备 1.0.0-alpha07

2023 年 11 月 29 日

androidx.test.espresso:espresso-device:1.0.0-alpha07 已发布。

API 变更

  • 支持在物理设备上设置设备模式

新功能

Espresso 设备 1.0.0-alpha06

2023年9月18日

已发布以下构件

  • androidx.test.espresso:espresso-device:1.0.0-alpha06

API 变更 * 支持在打开的物理设备上设置屏幕方向 * 移除 ActionContext 接口

**依赖项更改** * minSdkVersion 现在为 19

Espresso 设备 1.0.0-alpha05

2023年5月4日

已发布以下构件

  • androidx.test.espresso:espresso-device:1.0.0-alpha05

API 更改

  • 添加用于旋转和折叠模拟器的实验性 API

JUnit 扩展 1.2.1

ext.junit 1.2.1

2024年6月26日

androidx.test.ext:junit:1.2.1androidx.test.ext:junit-ktx:1.2.1 已发布。

ext.junit 1.2.0

2024年6月24日

androidx.test.ext:junit:1.2.0androidx.test.ext:junit-ktx:1.2.0 已发布。

自上次稳定版本 1.1.5 以来的更改包括

API 更改

  • 创建 DeleteFilesRule:用于在测试用例执行之间删除文件的 API
  • 添加 AppComponentFactoryRule
  • minSdkVersion 现在为 19,targetSdkVersion 现在为 34

错误修复

  • 参考文档清理 - 记录以前缺少的参数,修复链接等

新功能

  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 17。
  • 构件现在已签名。请参阅验证依赖项以了解更多详情。

ext.junit 1.2.0-rc01

2024年5月30日

androidx.test.ext:junit:1.2.0-rc01androidx.test.ext:junit-ktx:1.2.0-rc01 已发布。

ext.junit 1.2.0-beta01

2024年5月16日

androidx.test.ext:junit:1.2.0-beta01androidx.test.ext:junit-ktx:1.2.0-beta01 已发布。

ext.junit 1.2.0-alpha04

2024 年 4 月 26 日

androidx.test.ext:junit:1.2.0-alpha04androidx.test.ext:junit-ktx:1.2.0-alpha04 已发布。

错误修复

  • 在 DeleteFilesRule 中使用 PlatformTestStorage 代替 TestStorage

ext.junit 1.2.0-alpha03

2024 年 1 月 26 日

androidx.test.ext:junit:1.2.0-alpha03androidx.test.ext:junit-ktx:1.2.0-alpha03 已发布。

错误修复

  • 参考文档清理 - 记录以前缺少的参数,修复链接等

ext.junit 1.2.0-alpha02

2023 年 11 月 29 日

androidx.test.ext:junit:1.2.0-alpha02androidx.test.ext:junit-ktx:1.2.0-alpha02 已发布。

API 变更

  • 添加 AppComponentFactoryRule
  • minSdkVersion 现在为 19,targetSdkVersion 现在为 34

新功能

ext.junit 1.2.0-alpha01

2023 年 3 月 21 日

androidx.test.ext:junit:1.2.0-alpha01androidx.test.ext:junit-ktx:1.2.0-alpha01 已发布。

API 更改

  • 创建 DeleteFilesRule:用于在测试用例执行之间删除文件的 API

依赖项更改

  • 更新到 androidx.test:monitor:1.7.0-alpha01、androidx.test:core:1.6.0-alpha01、androidx.test.services:storage:1.5.0-alpha01
  • 更新至 Kotlin stdlib 1.7.22
  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 11。

JUnit 扩展 1.1.5

ext.junit 1.1.5

2023年1月3日

androidx.test.ext:junit:1.1.5androidx.test.ext:junit-ktx:1.1.5 已发布。

错误修复

  • 修复 ActivityScenarioRule 的参考文档格式

JUnit 扩展 1.1.4

ext.junit 1.1.4

2022年11月8日

androidx.test.ext:junit:1.1.4androidx.test.ext:junit-ktx:1.1.4 已发布。

自 1.1.3 以来的更改包括

依赖项更改

  • 更新至 Kotlin stdlib 1.7.10
  • 更新到 org.junit:junit:4.13.2

ext.junit 1.1.4-rc01

2022年10月26日

androidx.test.ext:junit:1.1.4-rc01androidx.test.ext:junit-ktx:1.1.4-rc01 已发布。

ext.junit 1.1.4-beta01

2022年10月6日

androidx.test.ext:junit:1.1.4-beta01androidx.test.ext:junit-ktx:1.1.4-beta01 已发布。

依赖项更改

  • 更新至 Kotlin stdlib 1.7.10

ext.junit 1.1.4-alpha07

2022年6月1日

androidx.test.ext:junit:1.1.4-alpha07androidx.test.ext:junit-ktx:1.1.4-alpha07 已发布。

错误修复

  • 回滚到 javac 11 以防止 IncompatibleClassChangeErrors [#1351]

依赖项更改

  • 更新到 Kotlin stdlib 1.6.21

ext.junit 1.1.4-alpha06

2022年4月28日

androidx.test.ext:junit:1.1.4-alpha06androidx.test.ext:junit-ktx:1.1.4-alpha06 已发布。

错误修复

  • AndroidJUnit4 javadoc 的小修改。

ext.junit 1.1.4-alpha05

2022年3月21日

androidx.test.ext:junit:1.1.4-alpha05androidx.test.ext:junit-ktx:1.1.4-alpha05 已发布。

ext.junit 1.1.4-alpha04

2022年2月11日

androidx.test.ext:junit:1.1.4-alpha04androidx.test.ext:junit-ktx:1.1.4-alpha04 已发布。

** 依赖项更改

  • 更新到 Kotlin stdlib 1.6.10

ext.junit 1.1.4-alpha03

2021年10月4日

androidx.test.ext:junit:1.1.4-alpha03androidx.test.ext:junit-ktx:1.1.4-alpha03 已发布。

ext.junit 1.1.4-alpha02

2021年9月28日

androidx.test.ext:junit:1.1.4-alpha02androidx.test.ext:junit-ktx:1.1.4-alpha02 已发布。

依赖项更改

  • 更新到
    • Kotlin stdlib 1.5.31
    • org.junit:junit:4.13.2

ext.junit 1.1.4-alpha01

2021年8月23日

androidx.test.ext:junit:1.1.4-alpha01androidx.test.ext:junit-ktx:1.1.4-alpha01 已发布。

依赖项更改

  • -ktx:显式依赖于 Kotlin stdlib 1.4.30

Junit-Gtest 1.0

Junit-Gtest 1.0.0-alpha01

2022年3月23日

androidx.test.ext:junit-gtest:1.0.0-alpha01 已发布。1.0.0-alpha01 版本包含这些提交。

首个版本的功能

  • JUnit Gtest 是一个新的库,它包含一个 JUnit 运行器,用于在连接的设备上运行 Gtest 套件。

Truth 扩展 1.6.0

ext.truth 1.6.0

2024年6月24日

androidx.test.ext:truth:1.6.0 已发布。

自上次稳定版本 1.5.0 以来的更改包括

API 变更

  • 删除未使用的 androidx.test.annotation 依赖项
  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)
  • minSdkVersion 现在是 19,targetSdk 现在是 34
  • 添加了 PersistableBundleSubject

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项

新功能

  • 构件现在已签名。请参阅验证依赖项以了解更多详情。
  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 17。

ext.truth 1.6.0-rc01

2024年5月30日

androidx.test.ext:truth:1.6.0-rc01 已发布。

ext.truth 1.6.0-beta01

2024年5月16日

androidx.test.ext:truth:1.6.0-beta01 已发布。

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项

ext.truth 1.6.0-alpha04

2024 年 4 月 26 日

androidx.test.ext:truth:1.6.0-alpha04 已发布。

新功能

  • BundleSubject 添加了 byteArray() 方法。

ext.truth 1.6.0-alpha03

2024 年 1 月 26 日

androidx.test.ext:truth:1.6.0-alpha03 已发布。

错误修复

  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)

新功能

  • 添加了 PersistableBundleSubject

ext.truth 1.6.0-alpha02

2023 年 11 月 29 日

androidx.test.ext:truth:1.6.0-alpha02 已发布。

API 变更

  • minSdkVersion 现在是 19,targetSdk 现在是 34

新功能

ext.truth 1.6.0-alpha01

2022年3月21日

androidx.test.ext:truth:1.6.0-alpha01 已发布。

依赖项更改

  • 更新到 androidx.test:core:1.6.0-alpha01
  • 更新至 Kotlin stdlib 1.7.22
  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 11。

Truth 扩展 1.5.0

ext.truth 1.5.0

2022年11月8日

androidx.test.ext:truth:1.5.0 已发布。

自 1.4.0 版本以来的更改包括

API 更改

  • 添加 BundleSubject#stringArray
  • 添加 ParcelableSubject.marshallsEquallyTo()
  • 添加 BundleSubject#doubleFloat

错误修复

  • 使 Intent 匹配器对空 Intent 明确失败

依赖项更改

  • 更新到
    • com.google.guava:guava:30.1.1-android
    • com.google.truth:truth:1.1.3

ext.truth 1.5.0-rc01

2022年10月26日

androidx.test.ext:truth:1.5.0-rc01 已发布。

ext.truth 1.5.0-beta02

2022年10月21日

androidx.test.ext:truth:1.5.0-beta02 已发布。

API 更改

  • 将 IntentCorrespondences#all 提升为稳定 API。

ext.truth 1.5.0-beta01

2022年10月6日

androidx.test.ext:truth:1.5.0-beta01 已发布。

API 更改

  • 使用 NonNull/Nullable 对自 1.4.0 以来引入的新 API 进行注释
  • 添加 BundleSubject#stringArray

ext.truth 1.5.0-alpha07

2022年6月1日

androidx.test.ext:truth:1.5.0-alpha07 已发布。

错误修复

  • 回滚到 javac 11 以防止 IncompatibleClassChangeErrors [#1351]

ext.truth 1.5.0-alpha06

2022年4月28日

androidx.test.ext:truth:1.5.0-alpha06 已发布。

ext.truth 1.5.0-alpha05

2022年3月21日

androidx.test.ext:truth:1.5.0-alpha05 已发布。

错误修复

  • 使 Intent 匹配器对空 Intent 明确失败

ext.truth 1.5.0-alpha04

2022年2月11日

androidx.test.ext:truth:1.5.0-alpha04 已发布。

ext.truth 1.5.0-alpha03

2021年10月4日

androidx.test.ext:truth:1.5.0-alpha03 已发布。

ext.truth 1.5.0-alpha02

2021年9月28日

androidx.test.ext:truth:1.5.0-alpha02 已发布。

API 变更

  • 添加 ParcelableSubject.marshallsEquallyTo()

依赖项更改

  • 更新到
    • com.google.guava:guava:30.1.1-android
    • com.google.truth:truth:1.1.3

ext.truth 1.5.0-alpha01

2021年8月23日

androidx.test.ext:truth:1.5.0-alpha01 已发布。

API 变更

  • 添加 BundleSubject#doubleFloat

监控器 1.7.2

monitor 1.7.2

2024年8月14日

androidx.test:monitor:1.7.2 已发布。

错误修复

  • 修复与较旧的 androidx.test:core 一起使用时的 ActivityInvoker$-CC ClassNotFoundErrors

monitor 1.7.1

2024年6月26日

androidx.test:monitor:1.7.1 已发布。

错误修复

  • 捕获并记录 forceEnableAppTracing 调用上的 NoSuchMethodError

monitor 1.7.0

2024年6月24日

androidx.test:monitor:1.7.0 已发布。

自上次稳定版本 1.6.1 以来的更改包括

API 变更

  • 将 DeviceController 制定为公共 API
  • 将 PlatformTestStorage 移动到公共 API
  • 添加内部 ControlledLooper#isDrawCallbacksSupported。
  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)
  • minSdkVersion 现在为 19,targetSdkVersion 现在为 34

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项
  • 修复 IntentMonitorImpl 回调中的同步问题

新功能

  • 构件现在已签名。请参阅验证依赖项以了解更多详情。
  • 主要版本工具链更新:现在编译为 Java 8 字节码

已知问题

  • monitor 依赖于 androidx.tracing:1.1.0。根据配置,gradle 可能会在运行时将其降级到 1.0.0,从而导致“No static method forceEnableAppTracing”错误。作为解决方法,请添加显式的“implementation androidx.tracing:1.1.0”依赖项。请参阅 https://github.com/android/android-test/issues/1755

monitor 1.7.0-rc01

2024年5月30日

androidx.test:monitor:1.7.0-rc01 已发布。

monitor 1.7.0-beta01

2024年5月16日

androidx.test:monitor:1.7.0-beta01 已发布。

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项

monitor 1.7.0-alpha05

2024 年 4 月 26 日

androidx.test:monitor:1.7.0-alpha05 已发布。

API 变更 * 将 DeviceController 从 ExperimentalTestApi 制定为公共 API * 将 PlatformTestStorage 移动到公共 API * 添加内部 ControlledLooper#isDrawCallbacksSupported。

monitor 1.7.0-alpha04

2024 年 1 月 26 日

androidx.test:monitor:1.7.0-alpha04 已发布。

错误修复

  • 修复 IntentMonitorImpl 回调中的同步问题
  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)

API 变更 * 将 androidx.test.platform.tracing 移回内部 API

monitor 1.7.0-alpha03

2023 年 11 月 29 日

androidx.test:monitor:1.7.0-alpha03 已发布。

API 变更

  • targetSdkVersion 现在为 34

新功能

monitor 1.7.0-alpha02

2023年9月18日

androidx.test:monitor:1.7.0-alpha02 已发布。

API 变更 * 添加 AppComponentFactory Rule

功能 * 空闲资源超时时转储线程状态

错误修复 * 修复 API >= 26 上对话框内的 View 的 captureToBitmap。

**依赖项更改** * minSdkVersion 现在为 19

monitor 1.7.0-alpha01

2023 年 3 月 21 日

androidx.test:monitor:1.7.0-alpha01 已发布。

依赖项更改

  • 更新至 Kotlin stdlib 1.7.22
  • 主要版本工具链更新:现在编译为 Java 8 字节码

监控器 1.6.0

monitor 1.6.1

2023年1月3日

androidx.test:monitor:1.6.1 已发布。

错误修复

  • 修复 PlatformTestStorage 的默认实现。这将使 espresso 能够在未配置 androidx.test.services 时保存测试失败的屏幕截图
  • 参考文档清理

monitor 1.6.0

2022年11月8日

androidx.test:monitor:1.6.0 已发布。

自 1.5.0 以来的更改包括

API 更改

  • 支持 ActivityScenario#launchActivityForResult 的内部 API 更改
  • 添加支持不同跟踪库的内部 API。

错误修复

  • 删除“仍处于 CREATED 到 STOPPED 状态的活动”日志垃圾邮件

依赖项更改

  • 添加对 androidx.tracing 的依赖

monitor 1.6.0-rc01

2022年10月26日

androidx.test:monitor:1.6.0-rc01 已发布。

monitor 1.6.0-beta01

2022年10月6日

androidx.test:monitor:1.6.0-beta01 已发布。

monitor 1.6.0-alpha05

2022年8月22日

androidx.test:monitor:1.6.0-alpha05 已发布。

API 更改

  • 支持 ActivityScenario#launchActivityForResult 的内部 API 更改

监控器又名平台 1.6.0

monitor 1.6.0-alpha04

2022年6月1日

androidx.test:monitor:1.6.0-alpha04 已发布。

错误修复

  • 回滚到 javac 11 以防止 IncompatibleClassChangeErrors [#1351]

monitor 1.6.0-alpha03

2022年4月28日

androidx.test:monitor:1.6.0-alpha03 已发布。

错误修复

  • 删除“仍处于 CREATED 到 STOPPED 状态的活动”日志垃圾邮件

monitor 1.6.0-alpha02

2022年3月21日

androidx.test:monitor:1.6.0-alpha02 已发布。

错误修复

  • 使 HardwareRendererCompat 日志记录的严重性降低。
  • 确保在 Instrumentation#finish 之前调用 Trace.endSection。

monitor 1.6.0-alpha01

2022年2月11日

androidx.test:monitor:1.6.0-alpha01 已发布。

API 变更

  • 添加用于支持不同跟踪库的内部插件 API。

依赖项更改

  • 添加对 androidx.tracing 的依赖

监控器又名平台 1.5.0

monitor 1.5.0

2021年12月13日

androidx.test:monitor:1.5.0 已发布。

自上次 1.4.0 稳定版本以来的更改是

API 变更

  • 添加 HardwareRendererCompat
  • 添加 PlatformTestStorage
  • 弃用 androidx.test.annotation.Beta

monitor 1.5.0-rc01

2021年11月18日

androidx.test:monitor:1.5.0-rc01 已发布。

monitor 1.5.0-beta01

2021年11月8日

androidx.test:monitor:1.5.0-beta01 已发布。

monitor 1.5.0-alpha03

2021年10月4日

androidx.test:monitor:1.5.0-alpha03 已发布。

monitor 1.5.0-alpha02

2021年9月28日

androidx.test:monitor:1.5.0-alpha02 已发布。

API 变更

  • 移除 HardwareRendererCompat#enableDrawingIfNecessary
  • 从 HardwareRendererCompat 中移除 ExperimentalTestApi
  • 弃用 androidx.test.annotation.Beta

monitor 1.5.0-alpha01

2021年8月23日

已发布 androidx.test:monitor:1.5.0-alpha01

API 变更

  • 添加 HardwareRendererCompat
  • 添加 PlatformTestStorage

Orchestrator 1.5.1

orchestrator 1.5.1

2024年10月15日

已发布 androidx.test:orchestrator:1.5.1

错误修复

  • 修复包含空格的测试名称的执行问题

orchestrator 1.5.0

2024年6月24日

已发布 androidx.test:orchestrator:1.5.0

自上次稳定版本 1.4.2 以来的更改包括:

新功能

  • 引入 Instrumentation Params 代理,允许用户将 instrumentation 参数代理到被测 APK(例如:--no-hidden-api-checks)。
  • 主要版本工具链更新。APK 现在使用不同的密钥签名,您需要卸载任何之前的 orchestrator('adb uninstall androidx.test.orchestrator')。

API 变更

  • minSdkVersion 现在为 19

错误修复

  • 修复测试名称过长导致的崩溃问题

orchestrator 1.5.0-rc01

2024年5月30日

已发布 androidx.test:orchestrator:1.5.0-rc01

orchestrator 1.5.0-beta01

2024年5月16日

已发布 androidx.test:orchestrator:1.5.0-beta01

orchestrator 1.5.0-alpha04

2024 年 4 月 26 日

已发布 androidx.test:orchestrator:1.5.0-alpha04

orchestrator 1.5.0-alpha03

2024年2月29日

已发布 androidx.test:orchestrator:1.5.0-alpha03

新功能

  • 引入 Instrumentation Params 代理,允许用户将 instrumentation 参数代理到被测 APK(例如:--no-hidden-api-checks)。

orchestrator 1.5.0-alpha02

2023 年 11 月 29 日

已发布 androidx.test:orchestrator:1.5.0-alpha02

API 变更

  • minSdkVersion 现在为 19

错误修复

  • 修复测试名称过长导致的崩溃问题

新功能

orchestrator 1.5.0-alpha01

2023 年 3 月 21 日

已发布 androidx.test:orchestrator:1.5.0-alpha01

依赖项更改

  • 主要版本工具链更新。APK 现在使用不同的密钥签名,您需要卸载任何之前的 orchestrator('adb uninstall androidx.test.orchestrator')。

Orchestrator 1.4.2

orchestrator 1.4.2

2022年11月8日

已发布 androidx.test:orchestrator:1.4.2

orchestrator 1.4.2-rc01

2022年10月26日

已发布 androidx.test:orchestrator:1.4.2-rc01

orchestrator 1.4.2-beta01

2022年10月6日

已发布 androidx.test:orchestrator:1.4.2-beta01

orchestrator 1.4.2-alpha04

2022年6月1日

已发布 androidx.test:orchestrator:1.4.2-alpha04

错误修复

  • 回滚到 javac 11 以防止 IncompatibleClassChangeErrors [#1351]

orchestrator 1.4.2-alpha03

2022年4月28日

已发布 androidx.test:orchestrator:1.4.2-alpha03

orchestrator 1.4.2-alpha02

2022年3月21日

已发布 androidx.test:orchestrator:1.4.2-alpha02

orchestrator 1.4.2-alpha01

2022年2月11日

已发布 androidx.test:orchestrator:1.4.2-alpha01

Orchestrator 1.4.1

orchestrator 1.4.1

2021年12月13日

已发布 androidx.test:orchestrator:1.4.1

自之前的 1.4.0 稳定版本以来的显著更改:

错误修复

  • 删除已废弃的 OrchestrationXmlTestRunListener,部分原因是为了防止在 Android 11+ 上出现错误消息。
  • 支持 Android API 31

orchestrator 1.4.1-rc01

2021年11月18日

已发布 androidx.test:orchestrator:1.4.1-rc01

orchestrator 1.4.1-beta01

2021年11月8日

已发布 androidx.test:orchestrator:1.4.1-beta01

orchestrator 1.4.1-alpha03

2021年10月4日

已发布 androidx.test:orchestrator:1.4.1-alpha03

orchestrator 1.4.1-alpha02

2021年9月28日

已发布 androidx.test:orchestrator:1.4.1-alpha02

orchestrator 1.4.1-alpha01

2021年8月23日

已发布 androidx.test:orchestrator:1.4.1-alpha01

错误修复

  • 删除已废弃的 OrchestrationXmlTestRunListener,部分原因是为了防止在 Android 11+ 上出现错误消息。

Runner 1.6.2

runner 1.6.2

2024年8月14日

已发布 androidx.test:runner:1.6.2

runner 1.6.1

2024年6月26日

已发布 androidx.test:runner:1.6.1

runner 1.6.0

2024年6月24日

已发布 androidx.test:runner:1.6.0

自上次稳定版本 1.5.2 以来的更改包括:

API 变更

  • 将 androidx.test.services.** 标记为 RestrictTo LIBRARY_GROUP
  • 添加 CustomFilter API
  • 添加 PackagePrefixClasspathSuite API
  • 将 PermissionRequester 标记为 RestrictTo LIBRARY_GROUP,而不是 ExperimentalTestApi
  • minSdkVersion 现在为 19

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项
  • 记录测试异常时,使用 Log 的内置 Throwable 支持来避免堆栈截断。
  • 内部更改,以支持使用 UiAutomation#grantRuntimePermissions 的 GrantPermissionRule。
  • 尝试在 RequiresDevice 文档中阐明限制和弃用原因。
  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)
  • 修复“-e class”和“-e notClass”在同一类/方法上应执行相同结果(不运行测试)的问题。
  • TestDiscoveryEventServiceConnection.send() 如果 instrumentation 抛出 RuntimeException,将正确地使测试失败,而不是挂起。
  • 停止为每个 AndroidJUnit4 测试类重新解析所有参数。这应该可以解决 #1948 中的初始化错误。
  • 强制初始化 instrumentationRunListener,以防止在检测系统服务器进程时出现 NPE。
  • 尝试避免输出超过 binder 事务限制的测试结果摘要。
  • 最多等待 2 秒才能运行活动结束器,以防止在测试中途结束活动的情况。
  • 改进由于自定义类加载器导致的 junit 类不匹配时的错误报告。
  • 修复 logOnly 模式下 @Ignore 类中的报告问题。
  • 将 InstrumentationResultPrinter 的实例化移动到加载 multidex 之后。
  • 在 RunnerArgs 解析中使用 TestStorage 之前注册它。
  • 按 TestRequestBuilder 提供的顺序执行测试类。

新功能

  • 构件现在已签名。请参阅验证依赖项以了解更多详情。
  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 17。

runner 1.6.0-rc01

2024年5月30日

已发布 androidx.test:runner:1.6.0-rc01

runner 1.6.0-beta01

2024年5月16日

已发布 androidx.test:runner:1.6.0-beta01

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项

runner 1.6.0-alpha07

2024 年 4 月 26 日

已发布 androidx.test:runner:1.6.0-alpha07

错误修复

  • 记录测试异常时,使用 Log 的内置 Throwable 支持来避免堆栈截断。
  • 内部更改,以支持使用 UiAutomation#grantRuntimePermissions 的 GrantPermissionRule。

runner 1.6.0-alpha06

2024 年 1 月 26 日

已发布 androidx.test:runner:1.6.0-alpha06

错误修复

  • 尝试在 RequiresDevice 文档中阐明限制和弃用原因。
  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)
  • 修复“-e class”和“-e notClass”在同一类/方法上应执行相同结果(不运行测试)的问题。

API 变更

  • 将 androidx.test.services.** 标记为 RestrictTo LIBRARY_GROUP
  • 从 CustomFilter 中删除 ExperimentalTestApi — 使其成为公共 API。
  • 从 PackagePrefixClasspathSuite 中删除 ExperimentalTestApi — 使其成为公共 API。
  • 将 PermissionRequester 标记为 RestrictTo LIBRARY_GROUP,而不是 ExperimentalTestApi

runner 1.6.0-alpha05

2023 年 11 月 29 日

已发布 androidx.test:runner:1.6.0-alpha05

错误修复

  • TestDiscoveryEventServiceConnection.send() 如果 instrumentation 抛出 RuntimeException,将正确地使测试失败,而不是挂起。
  • 停止为每个 AndroidJUnit4 测试类重新解析所有参数。这应该可以解决 #1948 中的初始化错误。

API 变更

  • minSdkVersion 现在为 19

新功能

runner 1.6.0-alpha04

2023年8月21日

已发布 androidx.test:runner:1.6.0-alpha04

错误修复

  • 强制初始化 instrumentationRunListener,以防止在检测系统服务器进程时出现 NPE。

依赖项更改

  • 升级到 androidx.annotation:1.7.0-beta01

runner 1.6.0-alpha03

2023年6月27日

已发布 androidx.test:runner:1.6.0-alpha03

错误修复

  • 尝试避免输出超过 binder 事务限制的测试结果摘要。

runner 1.6.0-alpha02

2023年4月25日

已发布 androidx.test:runner:1.6.0-alpha02

错误修复

  • 最多等待 2 秒才能运行活动结束器,以防止在测试中途结束活动的情况。

runner 1.6.0-alpha01

2023 年 3 月 21 日

已发布 androidx.test:runner:1.6.0-alpha01

错误修复

  • 改进由于自定义类加载器导致的 junit 类不匹配时的错误报告。
  • 修复 logOnly 模式下 @Ignore 类中的报告问题。
  • 将 InstrumentationResultPrinter 的实例化移动到加载 multidex 之后。
  • 在 RunnerArgs 解析中使用 TestStorage 之前注册它。
  • 按 TestRequestBuilder 提供的顺序执行测试类。

依赖项更改

  • 更新到 androidx.test:monitor:1.7.0-alpha01
  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 11。

Runner 1.5.0

runner 1.5.2

2023年1月3日

已发布 androidx.test:runner:1.5.2

错误修复

  • 参考文档清理

runner 1.5.1

2022年11月9日

已发布 androidx.test:runner:1.5.1

错误修复

  • 截断 TraceRunListener 中的跟踪名称,以防止长测试名称导致崩溃。

runner 1.5.0

2022年11月8日

已发布 androidx.test:runner:1.5.0

自 1.4.0 版本以来的更改包括

新功能

  • 记录测试生命周期事件的 Android Trace 跨度。

API 更改

  • 将长期存在的 @Beta/@ExperimentalTestApi androidx.test.runner.screenshot 标记为稳定但已弃用(推荐使用新的 androidx.test.core/espresso 截图 API)。
  • 弃用“-e timeout”运行时参数,推荐使用 JUnit 的 Timeout 规则。
  • 添加 AbstractFilter 类。
  • 添加 AndroidClasspathSuite 和实验性的 PackagePrefixClasspathSuite。
  • 对 Google Analytics 执行无操作并将其弃用。

错误修复

  • 添加对从 -e testFile 中的 TestStorage 读取的支持。
  • 处理在设置 instrumentationResultPrinter 之前应用程序崩溃的情况。
  • 立即在 orchestrator instrumentation 监听器中报告进程崩溃。
  • 支持使用逗号和哈希的参数化测试名称。
  • 改进 orchestrator 中测试发现阶段的错误处理。
  • 增强异常情况(应用程序崩溃等)中的错误处理。

依赖项更改

  • 更新到
    • org.junit:junit:4.13.2

runner 1.5.0-rc01

2022年10月26日

已发布 androidx.test:runner:1.5.0-rc01

runner 1.5.0-beta02

2022年10月21日

已发布 androidx.test:runner:1.5.0-beta02

API 更改

  • 将长期存在的 @Beta/@ExperimentalTestApi androidx.test.runner.screenshot 标记为稳定但已弃用。

错误修复

  • 添加对从 -e testFile 中的 TestStorage 读取的支持。

runner 1.5.0-beta01

2022年10月6日

已发布 androidx.test:runner:1.5.0-beta01

API 更改

  • 弃用“-e timeout”运行时参数,推荐使用 JUnit 的 Timeout 规则。
  • 添加 AbstractFilter 类。

错误修复

  • 修复长测试名称的跟踪错误。
  • 处理在设置 instrumentationResultPrinter 之前应用程序崩溃的情况。

runner 1.5.0-alpha04

2022年6月1日

已发布 androidx.test:runner:1.5.0-alpha04

错误修复

  • 回滚到 javac 11 以防止 IncompatibleClassChangeErrors [#1351]

runner 1.5.0-alpha03

2022年4月28日

已发布 androidx.test:runner:1.5.0-alpha03

错误修复

  • 立即在 orchestrator instrumentation 监听器中报告进程崩溃。

runner 1.5.0-alpha02

2022年3月21日

已发布 androidx.test:runner:1.5.0-alpha02

错误修复

  • 确保在 Instrumentation#finish 之前调用 Trace.endSection。

runner 1.5.0-alpha01

2022年2月11日

已发布 androidx.test:runner:1.5.0-alpha01

API 变更

  • 添加 AndroidClasspathSuite 和 PackagePrefixClasspathSuite。

新功能

  • 记录测试生命周期事件的 Android Trace 跨度。

错误修复

  • 支持使用逗号和哈希的参数化测试名称。
  • 改进 orchestrator 中测试发现阶段的错误处理。

Runner 1.4.1

runner 1.4.1-alpha03

2021年10月4日

已发布 androidx.test:runner:1.4.1-alpha03

错误修复

  • 报告从测试执行器抛出的错误时的异常。

runner 1.4.1-alpha02

2021年9月28日

已发布 androidx.test:runner:1.4.1-alpha02

API 变更

  • 将 androidx.test.annotaton.Beta 引用替换为 ExperimentalTestApi。

错误修复

  • 对 Google Analytics 执行无操作并将其弃用。

依赖项更改

  • 更新到
    • org.junit:junit:4.13.2

runner 1.4.1-alpha01

2021年8月23日

已发布 androidx.test:runner:1.4.1-alpha01

错误修复

  • 增强异常情况(应用程序崩溃等)中的错误处理。

Rules 1.6.1

rules 1.6.1

2024年6月26日

已发布 androidx.test:rules:1.6.1

rules 1.6.0

2024年6月24日

已发布 androidx.test:rules:1.6.0

自上次稳定版本 1.5.0 以来的更改包括

API 变更

  • minSdkVersion 现在为 19,targetSdkVersion 现在为 34
  • 建议使用 UiAutomation#grantRuntimePermissions 代替 GrantPermissionRule。

错误修复

  • 将指向 junit.org javadoc 的损坏链接替换为 @link。
  • 使 GrantPermissionRule 使用 UiAutomation 在 API >= 28 上授予权限,以修复在汽车系统上运行的问题。

新功能

  • 构件现在已签名。请参阅验证依赖项以了解更多详情。
  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 17。

rules 1.6.0-rc01

2024年5月30日

已发布 androidx.test:rules:1.6.0-rc01

rules 1.6.0-beta01

2024年5月16日

已发布 androidx.test:rules:1.6.0-beta01

错误修复

  • 删除未使用的 androidx.test.annotation 依赖项

rules 1.6.0-alpha04

2024 年 4 月 26 日

已发布 androidx.test:rules:1.6.0-alpha04

错误修复

  • 使 GrantPermissionRule 使用 UiAutomation 在 API >= 28 上授予权限,以修复在汽车系统上运行的问题。

rules 1.6.0-alpha03

2024 年 1 月 26 日

已发布 androidx.test:rules:1.6.0-alpha03

错误修复

  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)

API 变更

  • 建议使用 UiAutomation#grantRuntimePermissions 代替 GrantPermissionRule。

rules 1.6.0-alpha02

2023 年 11 月 29 日

已发布 androidx.test:rules:1.6.0-alpha02

错误修复

  • 将指向 junit.org javadoc 的损坏链接替换为 @link。

API 变更

  • minSdkVersion 现在为 19,targetSdkVersion 现在为 34

新功能

rules 1.6.0-alpha01

2023 年 3 月 21 日

已发布 androidx.test:rules:1.6.0-alpha01

依赖项更改

  • 更新到 androidx.test:runner:1.6.0-alpha01
  • 更新至 Kotlin stdlib 1.7.22
  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 11。

Rules 1.5.0

rules 1.5.0

2022年11月8日

已发布 androidx.test:rules:1.5.0

自 1.4.0 版本以来的更改包括

API 变更

  • 将长期存在的 @Beta/@ExperimentalTestApi GrantPermissionRule 和 ServiceTestRule 提升为稳定 API。
  • 将长期存在的 @Beta/@ExperimentalTestApi AtraceLogger 和 ProviderTestRule 提升为稳定但已弃用的 API。

依赖项更改

  • 更新到
    • org.junit:junit:4.13.2

Rules 1.5.0

rules 1.5.0-rc01

2022年10月26日

已发布 androidx.test:rules:1.5.0-rc01

rules 1.5.0-beta01

2022年10月21日

已发布 androidx.test:rules:1.5.0-beta01

API 变更

  • 将长期存在的 @Beta/@ExperimentalTestApi GrantPermissionRule 和 ServiceTestRule 提升为稳定 API。
  • 将长期存在的 @Beta/@ExperimentalTestApi AtraceLogger 和 ProviderTestRule 提升为稳定但已弃用的 API。

Rules 1.4.1

rules 1.4.1-beta01

2022年10月6日

已发布 androidx.test:rules:1.4.1-beta01

rules 1.4.1-alpha07

2022年6月1日

已发布 androidx.test:rules:1.4.1-alpha07

错误修复

  • 回滚到 javac 11 以防止 IncompatibleClassChangeErrors [#1351]

rules 1.4.1-alpha06

2022年4月28日

已发布 androidx.test:rules:1.4.1-alpha06

rules 1.4.1-alpha05

2022年3月21日

已发布 androidx.test:rules:1.4.1-alpha05

rules 1.4.1-alpha04

2022年2月11日

已发布 androidx.test:rules:1.4.1-alpha04

rules 1.4.1-alpha03

2021年10月4日

已发布 androidx.test:rules:1.4.1-alpha03

rules 1.4.1-alpha02

2021年9月28日

已发布 androidx.test:rules:1.4.1-alpha02

API 变更

  • 将 androidx.test.annotaton.Beta 引用替换为 ExperimentalTestApi。

依赖项更改

  • 更新到
    • org.junit:junit:4.13.2

rules 1.4.1-alpha01

2021年8月23日

已发布 androidx.test:rules:1.4.1-alpha01

无重大更改

Services 1.5.0

services 1.5.0

2024年6月24日

已发布 androidx.test.services:test-services:1.5.0 androidx.test.services:storage:1.5.0

自上次稳定版本 1.4.2 以来的更改包括:

API 变更

  • 将 TestStorage 从实验性 API 变为内部 API。
  • minSdkVersion 现在为 19,targetSdkVersion 现在为 34

错误修复

  • 减少 HostedFile 日志垃圾信息。
  • 删除未使用的 androidx.test.annotation 依赖项
  • TestStorage:以非系统用户身份运行时,使用本地缓存目录存储输出文件。
  • 写入文件时,TestStorage 现在会截断文件,除非显式打开以进行追加。这可以防止先前写入文件中的字节保留在文件的末尾。
  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)

新功能

  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 17。
    • APK 现在使用不同的密钥签名,您需要卸载任何之前的 APK('adb uninstall androidx.test.services')。

services 1.5.0-rc01

2024年5月30日

已发布 androidx.test.services:test-services:1.5.0-rc01 androidx.test.services:storage:1.5.0-rc01

services 1.5.0-beta01

2024年5月16日

已发布 androidx.test.services:test-services:1.5.0-beta01 androidx.test.services:storage:1.5.0-beta01

错误修复

  • 减少 HostedFile 日志垃圾信息。
  • 删除未使用的 androidx.test.annotation 依赖项

services 1.5.0-alpha04

2024 年 4 月 26 日

已发布 androidx.test.services:test-services:1.5.0-alpha04 androidx.test.services:storage:1.5.0-alpha04

错误修复

  • TestStorage:以非系统用户身份运行时,使用本地缓存目录存储输出文件。

API 变更

  • 将 TestStorage 从实验性 API 变为内部 API。

services 1.5.0-alpha03

2024 年 1 月 26 日

已发布 androidx.test.services:test-services:1.5.0-alpha03 androidx.test.services:storage:1.5.0-alpha03

错误修复

  • 写入文件时,TestStorage 现在会截断文件,除非显式打开以进行追加。这可以防止先前写入文件中的字节保留在文件的末尾。
  • 删除对 Android SDK < 19 的所有支持。最低 API 为 19(Android Kit Kat 4.4)

services 1.5.0-alpha02

2023 年 11 月 29 日

已发布 androidx.test.services:test-services:1.5.0-alpha02 androidx.test.services:storage:1.5.0-alpha02

错误修复

  • 尝试避免输出超过 binder 事务限制的测试结果摘要。

API 变更

  • minSdkVersion 现在为 19,targetSdkVersion 现在为 34

新功能

services 1.5.0-alpha01

2022年3月21日

已发布 androidx.test.services:test-services:1.5.0-alpha01 androidx.test.services:storage:1.5.0-alpha01

依赖项更改

  • 更新到 androidx.test:monitor:1.7.0-alpha01
  • 主要版本工具链更新
    • 类现在编译为 java8 字节码
    • javac 编译器切换到 OpenJDK 11。
    • APK现已使用不同的密钥签名,您需要卸载任何之前的orchestrator('adb uninstall androidx.test.services')。

Services 1.4.2

services 1.4.2

2022年11月8日

androidx.test.services:test-services:1.4.2 androidx.test.services:storage:1.4.2 已发布。

services 1.4.2-rc01

2022年10月26日

androidx.test.services:test-services:1.4.2-rc01 androidx.test.services:storage:1.4.2-rc01 已发布。

services 1.4.2-beta01

2022年10月6日

androidx.test.services:test-services:1.4.2-beta01 androidx.test.services:storage:1.4.2-beta01 已发布。

services 1.4.2-alpha04

2022年6月1日

androidx.test.services:test-services:1.4.2-alpha04 androidx.test.services:storage:1.4.2-alpha04 已发布。

错误修复

  • 回滚到 javac 11 以防止 IncompatibleClassChangeErrors [#1351]

services 1.4.2-alpha03

2022年4月28日

androidx.test.services:test-services:1.4.2-alpha03 androidx.test.services:storage:1.4.2-alpha03 已发布。

services 1.4.2-alpha02

2022年3月21日

androidx.test.services:test-services:1.4.2-alpha02 androidx.test.services:storage:1.4.2-alpha02 已发布。

services 1.4.2-alpha01

2022年2月11日

androidx.test.services:test-services:1.4.2-alpha01 androidx.test.services:storage:1.4.2-alpha01 已发布。

Services 1.4.1

services 1.4.1

2021年12月13日

androidx.test.services:test-services:1.4.1 androidx.test.services:storage:1.4.1 已发布。

自之前的 1.4.0 稳定版本以来的显著更改:

**错误修复**

  • 通过为ToolConnection使用真实uid修复Android API 31上的执行问题 [#1042]

services 1.4.1-rc01

2021年11月18日

androidx.test.services:test-services:1.4.1-rc01 androidx.test.services:storage:1.4.1-rc01 已发布。

services 1.4.1-beta01

2021年11月8日

androidx.test.services:test-services:1.4.1-beta01 androidx.test.services:storage:1.4.1-beta01 已发布。

services 1.4.1-alpha03

2021年10月4日

androidx.test.services:test-services:1.4.1-alpha03 androidx.test.services:storage:1.4.1-alpha03 已发布。

services 1.4.1-alpha02

2021年9月28日

androidx.test.services:test-services:1.4.1-alpha02 androidx.test.services:storage:1.4.1-alpha02 已发布。

services 1.4.1-alpha01

2021年8月23日

androidx.test.services:test-services:1.4.1-alpha01 androidx.test.services:storage:1.4.1-alpha01 已发布。

**错误修复**

  • 通过为ToolConnection使用真实uid修复Android S Beta4上的执行问题 [#1042]

版本 1.4.0

版本 1.4.0

2021年6月30日

这是AndroidX Test 1.4.0 + Espresso 3.4.0的稳定版本。它包含对以下库的更新:

  • Core 1.4.0
  • Espresso 3.4.0
  • Intents 3.4.0
  • JUnit 1.1.3
  • Monitor 1.4.0
  • Orchestrator 1.4.0
  • Runner 1.4.0
  • Rules 1.4.0
  • Truth 1.4.0
  • Test Services 1.4.0

自1.4.0-rc01以来没有变化。以下是自1.3.0版本以来的更改摘要:

新功能

  • 为否定条件添加Espresso ViewMatcher API。
  • 允许从Espresso IdlingRegistry注销Looper。
  • 支持通过java.util.ServiceLoader指定junit RunListeners。
  • 引入Espresso BoundedDiagnosingMatcher基类API,提供更好的错误消息,并将其应用于各种Espresso匹配器。
  • 支持在类级别使用UIThreadTest。
  • 向ext.truth的LocationSubject添加了一些实用程序方法。
  • 添加SparseBooleanArraySubject Truth Subject用于对SparseBooleanArray进行断言。

错误修复

  • 改进了测试失败时对大型堆栈跟踪的处理 [#729, #269]
    • 删除与测试运行器框架相关的堆栈帧。
    • 将堆栈跟踪截断为最大64KB限制,以避免binder限制事务错误。
  • 在Android API < 21上,支持类路径扫描测试发现用于多dex instrumentation apks。
  • Espresso:当没有活动存在时,改进错误消息。
  • 改进Instrumentation#runOnMainSync异常错误处理。
  • 改进-e timeout_msec和AndroidJUnit4的文档。
  • 将ActivityOptions发送到BootstrapActivity [#685]
  • 通过启用它使用Matcher.describeMismatch来改进ViewMatchers#assertThat错误消息。
  • 修复使用espresso远程时缺少的desugar ThrowableExtension错误[issuetracker.google.com/170228109]
  • 通过包含androidx.test.espresso.web.bridge类来修复Android API < 19上的espresso web。
  • 如果尚未注销,则在InstrumentationActivityInvoker中注销ActivityResultWaiter。
  • Runner:将TestEventClient“非主要instr”日志消息降低为警告,因为这是多进程测试中的预期情况。
  • Espresso:更新HasSiblingMatcher仅检查兄弟节点(而非自身)。
  • 修复espresso.idling.resource的工件名称 [#809]
  • 公开setMasterPolicyTimeoutWhenDebuggerAttached功能 [#814]
  • 删除过于冗长的ActivityLifecycleMonitorImpl回调日志记录。

依赖项更改

  • 更新espresso.accessibility和espresso.contrib以依赖于与androidx兼容的com.google.android.apps.common.testing.accessibility.framework:accessibility-test-framework:3.1。此版本因此需要java8源/目标兼容性。[#492]

已知问题

  • 在APIS 30+上使用orchestrator需要Studio/AGP 4.2+

版本 1.4.0-rc01

2021年6月21日

这是AndroidX Test 1.4.0/Espresso 3.4.0的候选版本。API是稳定的。它包含对以下库的更新:

  • Core 1.4.0-rc01
  • Espresso 3.4.0-rc01
  • Intents 3.4.0-rc01
  • JUnit 1.1.3-rc01
  • Monitor 1.4.0-rc01
  • Orchestrator 1.4.0-rc01
  • Runner 1.4.0-rc01
  • Rules 1.4.0-rc01
  • Truth 1.4.0-rc01
  • Test Services 1.4.0-rc01

除了版本号外,此候选版本与1.4.0-beta02/3.4.0-beta02版本相同。

版本 1.4.0-beta02

2021年6月7日

这是AndroidX Test 1.4.0的beta版本。API预计不会更改。它包含对以下库的更新:

  • Core 1.4.0-beta02
  • Espresso 3.4.0-beta02
  • Intents 3.4.0-beta02
  • JUnit 1.1.3-beta02
  • Monitor 1.4.0-beta02
  • Orchestrator 1.4.0-beta02
  • Runner 1.4.0-beta02
  • Rules 1.4.0-beta02
  • Truth 1.4.0-beta02
  • Test Services 1.4.0-beta02

以下是自1.4.0-beta01版本以来的更改摘要:

错误修复

  • 切换回经典的反糖化以解决与beta-1的向后兼容性和核心库反糖化问题 [修复 #968]

版本 1.4.0-beta01

2021年5月17日

这是AndroidX Test 1.4.0的beta版本。API预计不会更改。它包含对以下库的更新:

  • Core 1.4.0-beta01
  • Espresso 3.4.0-beta01
  • Intents 3.4.0-beta01
  • JUnit 1.1.3-beta01
  • Monitor 1.4.0-beta01
  • Orchestrator 1.4.0-beta01
  • Runner 1.4.0-beta01
  • Rules 1.4.0-beta01
  • Truth 1.4.0-beta01
  • Test Services 1.4.0-beta01

以下是自1.4.0-alpha06版本以来的更改摘要:

新的API清理

  • 删除InstrumentationProvider
  • 取消BoundedMatcher的弃用
  • 恢复CursorMatcher继承自BoundedMatcher

版本 1.4.0-alpha06

2021年4月29日

这是AndroidX Test 1.4.0的alpha版本。新的API可能会更改。它包含对以下库的更新:

  • Core 1.4.0-alpha06
  • Espresso 3.4.0-alpha06
  • Intents 3.4.0-alpha06
  • JUnit 1.1.3-alpha06
  • Monitor 1.4.0-alpha06
  • Orchestrator 1.4.0-alpha06
  • Runner 1.4.0-alpha06
  • Rules 1.4.0-alpha06
  • Truth 1.4.0-alpha06
  • Test Services 1.4.0-alpha06

以下是自1.4.0-alpha05版本以来的更改摘要:

错误修复

  • 通过从清单中删除forceQueryable来支持针对SDK < 29进行编译 [#917]

版本 1.4.0-alpha05

2021年3月15日

这是AndroidX Test 1.4.0的alpha版本。新的API可能会更改。它包含对以下库的更新:

  • Core 1.4.0-alpha05
  • Espresso 3.4.0-alpha05
  • Intents 3.4.0-alpha05
  • JUnit 1.1.3-alpha05
  • Monitor 1.4.0-alpha05
  • Orchestrator 1.4.0-alpha05
  • Runner 1.4.0-alpha05
  • Rules 1.4.0-alpha05
  • Truth 1.4.0-alpha05
  • Test Services 1.4.0-alpha05

以下是自1.4.0-alpha04版本以来的更改摘要:

API 变更

  • [Truth] 添加SparseBooleanArraySubject Truth Subject用于对SparseBooleanArray进行断言。

错误修复

  • 向Android测试Orchestrator和Android测试服务APK添加QUERY_ALL_PACKAGES权限,以便在Android API R+上正常工作。
  • 在Android API < 21上,支持类路径扫描测试发现用于多dex instrumentation apks。

版本 1.4.0-alpha04

2021年2月8日

这是AndroidX Test 1.4.0的alpha版本。新的API可能会更改。它包含对以下库的更新:

  • Core 1.4.0-alpha04
  • Espresso 3.4.0-alpha04
  • Intents 3.4.0-alpha04
  • JUnit 1.1.3-alpha04
  • Monitor 1.4.0-alpha04
  • Orchestrator 1.4.0-alpha04
  • Runner 1.4.0-alpha04
  • Rules 1.4.0-alpha04
  • Truth 1.4.0-alpha04
  • Test Services 1.4.0-alpha04

以下是自1.3.1-alpha03版本以来的更改摘要:

新功能

  • [Espresso] 改进了各种Espresso断言的错误消息
  • [Truth] 向LocationSubject添加了一些实用程序方法

API 变更

  • 添加了InstrumentationRegistry.registerInstrumentationProvider

错误修复

  • 删除过于冗长的ActivityLifecycleMonitorImpl回调日志记录。

依赖项更改

版本 1.3.1

版本 1.3.1-alpha03

2021年1月11日

这是AndroidX Test 1.3.1的alpha版本。新的API可能会更改。它包含对以下库的更新:

  • Core 1.3.1-alpha03
  • Espresso 3.4.0-alpha03
  • Intents 3.4.0-alpha03
  • JUnit 1.1.3-alpha03
  • Monitor 1.3.1-alpha03
  • Orchestrator 1.3.1-alpha03
  • Runner 1.3.1-alpha03
  • Rules 1.3.1-alpha03
  • Truth 1.3.1-alpha03
  • Test Services 1.3.1-alpha03

以下是自1.3.1-alpha02版本以来的更改摘要:

新功能

  • 支持在类级别使用UIThreadTest。

错误修复

  • 如果尚未注销,则在InstrumentationActivityInvoker中注销ActivityResultWaiter。
  • Runner:将TestEventClient“非主要instr”日志消息降低为警告,因为这是多进程测试中的预期情况。
  • Espresso:更新HasSiblingMatcher仅检查兄弟节点(而非自身)。
  • 修复espresso.idling.resource的工件名称 [#809]
  • 公开setMasterPolicyTimeoutWhenDebuggerAttached功能 [#814]

依赖项更改

  • 更新espresso.accessibility和espresso.contrib以依赖于与androidx兼容的com.google.android.apps.common.testing.accessibility.framework:accessibility-test-framework:3.1。此版本因此需要java8源/目标兼容性。[#492]

版本 1.3.1-alpha02

2020年10月20日

这是AndroidX Test 1.3.1的alpha版本。新的API可能会更改。它包含对以下库的更新:

  • Core 1.3.1-alpha02
  • Espresso 3.4.0-alpha02
  • Intents 3.4.0-alpha02
  • JUnit 1.1.3-alpha02
  • Monitor 1.3.1-alpha02
  • Orchestrator 1.3.1-alpha02
  • Runner 1.3.1-alpha02
  • Rules 1.3.1-alpha02
  • Truth 1.3.1-alpha02
  • Test Services 1.3.1-alpha02

以下是自1.3.1-alpha01版本以来的更改摘要:

新功能

  • 抢先体验新的Espresso BoundedDiagnosingMatcher基类API,该API提供更好的错误消息。

错误修复

  • 修复API 30上的orchestrator clearPackageData [#743]

版本 1.3.1-alpha01

2020年10月15日

这是AndroidX Test 1.3.1的alpha版本。新的API可能会更改。它包含对以下库的更新:

  • Core 1.3.1-alpha01
  • Espresso 3.4.0-alpha01
  • Intents 3.4.0-alpha01
  • JUnit 1.1.3-alpha01
  • Monitor 1.3.1-alpha01
  • Orchestrator 1.3.1-alpha01
  • Runner 1.3.1-alpha01
  • Rules 1.3.1-alpha01
  • Truth 1.3.1-alpha01
  • Test Services 1.3.1-alpha01

以下是自1.3.0版本以来的更改摘要:

新功能

  • 为否定条件添加Espresso ViewMatcher API。
  • 允许从Espresso IdlingRegistry注销Looper。
  • 支持通过java.util.ServiceLoader指定junit RunListeners。

错误修复

  • 改进了测试失败时对大型堆栈跟踪的处理 [#729, #269]
    • 删除与测试运行器框架相关的堆栈帧。
    • 将堆栈跟踪截断为最大64KB限制,以避免binder限制事务错误。
  • Espresso:当没有活动存在时,改进错误消息。
  • 改进Instrumentation#runOnMainSync异常错误处理。
  • 添加Orchestrator和Services的包可见性条目,以修复使用targetSdk 30时的Orchestator [#743]
  • 改进-e timeout_msec和AndroidJUnit4的文档。
  • 将ActivityOptions发送到BootstrapActivity [#685]
  • 通过启用它使用Matcher.describeMismatch来改进ViewMatchers#assertThat错误消息。
  • 修复使用espresso远程时缺少的desugar ThrowableExtension错误[issuetracker.google.com/170228109]
  • 通过包含androidx.test.espresso.web.bridge类来修复Android API < 19上的espresso web。

版本 1.3.0

版本 1.3.0

2020年8月25日

这是AndroidX Test 1.3.0的稳定版本。它包含对以下库的更新:

  • Core 1.3.0
  • Espresso 3.3.0
  • Intents 3.3.0
  • JUnit 1.1.2
  • Monitor 1.3.0
  • Orchestrator 1.3.0
  • Runner 1.3.0
  • Rules 1.3.0
  • Truth 1.3.0
  • Test Services 1.3.0

自1.3.0-rc03以来没有变化。以下是自1.2.0版本以来的更改摘要:

新功能

  • 支持通过SdkSuppress#codeName按预发行SDK进行过滤。
  • 添加Location的truth扩展。
  • 添加Bundle字符串和可解析数组的truth断言。
  • 在ActivityScenario中支持ActivityOptions。
  • 使活动生命周期转换超时可配置。
  • 处理通过隐式意图启动的活动。(修复 #496)
  • 添加 BundleMatchers.isEmpty() 和 isEmptyOrNull() 方法
  • 允许在不调用 Intents.init 的情况下调用 Intents.release
  • 添加 ViewMatchers.isFocused()

API 变更

  • ActivityTestRule 已弃用,建议使用 ActivityScenario/ActivityScenarioRule
  • 允许 ServiceTestRule 的子类自定义超时时间

错误修复

  • 修复参数化方法过滤问题
    • 这也修复了使用 Orchestrator 运行参数化测试的问题 [#215, https://issuetracker.google.com/119838413]
  • 修复在 API 29 上运行时出现的“运行时权限对话框”问题
  • 跳过 ActivityScenario 中使用的空 Activity 的启动和结束动画。(修复 #411)
  • 处理通过隐式意图启动的活动。(修复 #496)
  • 使 Kotlin 包名唯一,修复使用 AGP 4.1 构建时的日志垃圾信息 [#680]
  • 仅当 RobolectricTestRunner 位于类路径上时,才在 AndroidJUnit4 运行器中委托给它
  • Espresso contrib:将 RecyclerView.findViewHolderForPosition 方法的用法替换为其替代方法
  • 修复在启用 AccessibilityChecks 时测试出现的 NoSuchMethodError 错误 (#376)
  • 修复 Espresso 由于处理消息而不是空闲资源而繁忙时的错误消息
  • ViewMatchers.isDisplayingAtLeast() 可用于缩放比例为负值的视图。
  • 增强 WithIdMatcher 的错误消息
  • 移除 waitForAtLeastOneActivityToBeResumed 中多余的等待
  • 为 ACTION_UP 设置正确的元状态
  • 修复缺少 androidx_test_espresso_contrib_drawer_layout_tag 字段的问题 [#671]
  • 改进 AndroidJUnitRunner 中的类路径扫描错误处理:忽略所有找不到类和链接错误 (修复 #439)
  • 在从 RunnerArgs 创建 RunListeners 之前初始化 InstrumentationRegistry

依赖项更改

  • Truth:更新到 com.google.truth:truth:1.0 和 com.google.guava:guava:27.0.1-android

版本 1.3.0-rc03

2020年8月5日

这是 AndroidX Test 1.3.0 的第三个候选版本。它包含对以下库的更新:

  • Core 1.3.0-rc03
  • Espresso 3.3.0-rc03
    • 移除一些尚未准备好发布的 API,这些 API 在之前的 rc+beta 版本中被错误地包含。
  • Intents 3.3.0-rc03
    • 移除一些尚未准备好发布的 API,这些 API 在之前的 rc+beta 版本中被错误地包含。
  • JUnit 1.1.2-rc03
  • Monitor 1.3.0-rc03
  • Orchestrator 1.3.0-rc03
  • Runner 1.3.0-rc03
  • Rules 1.3.0-rc03
  • Truth 1.3.0-rc03
  • Test Services 1.3.0-rc03

版本 1.3.0-rc02

2020年7月28日

这是 AndroidX Test 1.3.0 的第二个候选版本。它包含对以下库的更新:

  • Core 1.3.0-rc02
    • 使 Kotlin 包名唯一,修复使用 AGP 4.1 构建时的日志垃圾信息 [#680]
  • Espresso 3.3.0-rc02
    • 修复缺少 androidx_test_espresso_contrib_drawer_layout_tag 字段的问题 [#671]
  • Intents 3.3.0-rc02
  • JUnit 1.1.2-rc02
  • Monitor 1.3.0-rc02
  • Orchestrator 1.3.0-rc02
  • Runner 1.3.0-rc02
  • Rules 1.3.0-rc02
    • 添加 ActivityTestRule -> ActivityScenario 的转换提示
  • Truth 1.3.0-rc02
  • Test Services 1.3.0-rc02

版本 1.3.0-rc01

2020年5月28日

这是一个 AndroidX Test 1.3.0 的候选版本。它包含对以下库的更新:

  • Core 1.3.0-rc01
  • Espresso 3.3.0-rc01
    • 使包名唯一,修复使用 AGP 4.1 构建时的日志垃圾信息 [#573]
  • Intents 3.3.0-rc01
  • JUnit 1.1.2-rc01
  • Monitor 1.3.0-rc01
    • 使包名唯一,修复使用 AGP 4.1 构建时的日志垃圾信息 [#573]
  • Orchestrator 1.3.0-rc01
  • Runner 1.3.0-beta01
    • 使包名唯一,修复使用 AGP 4.1 构建时的日志垃圾信息 [#573]
  • Rules 1.3.0-rc01
    • 使包名唯一,修复使用 AGP 4.1 构建时的日志垃圾信息 [#573]
  • Truth 1.3.0-rc01
  • Test Services 1.3.0-rc01

版本 1.3.0-beta02

2020年5月20日

这是 AndroidX Test 1.3.0 的 beta 版本。新的 API 不太可能更改。它包含对以下库的更新:

  • Core 1.3.0-beta02
  • Espresso 3.3.0-beta02
  • Intents 3.3.0-beta02
  • JUnit 1.1.2-beta02
  • Monitor 1.3.0-beta02
  • Orchestrator 1.3.0-beta02
  • Runner 1.3.0-beta01
    • 修复使用 Orchestrator 运行参数化测试的问题 [#215, https://issuetracker.google.com/119838413]
  • Rules 1.3.0-beta02
  • Truth 1.3.0-beta02
  • Test Services 1.3.0-beta02
    • 修复在 API 29 上运行时出现的“运行时权限对话框”问题

版本 1.3.0-beta01

2020年4月20日

这是 AndroidX Test 1.3.0 的 beta 版本。新的 API 不太可能更改。它包含对以下库的更新:

  • Core 1.3.0-beta01
  • Espresso 3.3.0-beta01
    • 添加 ViewMatchers.isFocused()
    • 增强 WithIdMatcher 的错误消息
  • Intents 3.3.0-beta01
    • 允许在不调用 Intents.init 的情况下调用 Intents.release
  • JUnit 1.1.2-beta01
  • Monitor 1.3.0-beta01
  • Orchestrator 1.3.0-beta01
  • Runner 1.3.0-beta01
    • 仅当 RobolectricTestRunner 位于类路径上时才委托给它
    • 支持通过SdkSuppress#codeName按预发行SDK进行过滤。
  • Rules 1.3.0-beta01
    • 弃用 ActivityTestRule
  • Truth 1.3.0-beta01
    • 使 LocationSubject 重写 isEqualTo
  • Test Services 1.3.0-beta01

版本 1.3.0-alpha05

2020年3月17日

这是 AndroidX Test 1.3.0 的 alpha 版本。新的 API 可能会更改。它包含对以下库的更新:

  • Core 1.3.0-alpha05
    • 跳过 ActivityScenario 中使用的空 Activity 的启动和结束动画。(修复 #411)
    • 处理通过隐式意图启动的活动。(修复 #496)
  • Espresso 3.3.0-alpha05
    • ViewMatchers.isDisplayingAtLeast() 可用于缩放比例为负值的视图。
    • 移除 waitForAtLeastOneActivityToBeResumed 中多余的等待
    • 为 ACTION_UP 设置正确的元状态
  • Intents 3.3.0-alpha05
  • JUnit 1.1.2-alpha05
  • Monitor 1.3.0-alpha05
  • Orchestrator 1.3.0-alpha05
  • Runner 1.3.0-alpha05
    • 忽略扫描类路径以查找测试时的所有 LinkageError 异常。(修复 #439)
    • 在从 RunnerArgs 创建 RunListeners 之前初始化 InstrumentationRegistry
  • Rules 1.3.0-alpha05
  • Truth 1.3.0-alpha05
  • Test Services 1.3.0-alpha05

版本 1.3.0-alpha04

2020年2月20日

这是 AndroidX Test 1.3.0 的 alpha 版本。新的 API 可能会更改。它包含对以下库的更新:

  • Core 1.3.0-alpha04
  • Espresso 3.3.0-alpha04
    • 修复 Espresso 由于处理消息而不是空闲资源而繁忙时的错误消息
  • Intents 3.3.0-alpha04
  • JUnit 1.1.2-alpha04
  • Monitor 1.3.0-alpha04
  • Orchestrator 1.3.0-alpha04
  • Runner 1.3.0-alpha04
    • 修复 AndroidJUnitRunner,如果发生 StrictMode 违规,则将测试报告为失败
    • 添加更多信息,以便更容易诊断 JUnit4 测试类格式错误的情况
  • Rules 1.3.0-alpha04
  • Truth 1.3.0-alpha04
  • Test Services 1.3.0-alpha04
    • 在测试服务中包含测试存储服务

以下是版本 1.3.0-alpha04 中包含的完整提交列表

版本 1.3.0-alpha03

2019年12月3日

这是 AndroidX Test 1.3.0 的 alpha 版本。新的 API 可能会更改。它包含对以下库的更新:

  • Core 1.3.0-alpha03
    • 在ActivityScenario中支持ActivityOptions。
  • Espresso 3.3.0-alpha03
    • 修复在启用 AccessibilityChecks 时测试出现的 NoSuchMethodError 错误 (#376)
  • Intents 3.3.0-alpha03
  • JUnit 1.1.2-alpha03
  • Monitor 1.3.0-alpha03
  • Orchestrator 1.3.0-alpha03
  • Runner 1.3.0-alpha03
    • 执行类路径扫描以查找测试时忽略 NoClassDefFoundErrors
    • 添加对未处理异常的更好的错误处理
    • 允许通过运行器参数选择退出“waitForActivitiesToComplete”
  • Rules 1.3.0-alpha03
  • Truth 1.3.0-alpha03
    • 更新 Location 扩展程序以更好地处理空值。
    • 向 BundleSubject 添加 stringArrayList 和 parcelableArrayList 方法

版本 1.2.1

版本 1.2.1-alpha02

2019年7月15日

这是 AndroidX Test 1.2.1 的 alpha 版本。新的 API 可能会更改。它包含对以下库的更新:

  • Core 1.2.1-alpha02
    • 使活动生命周期转换超时可配置。
  • Espresso 3.3.0-alpha02
  • Intents 3.3.0-alpha02
    • 添加 BundleMatchers.isEmpty() 和 isEmptyOrNull() 方法
  • JUnit 1.1.2-alpha02
  • Monitor 1.3.0-alpha02
  • Orchestrator 1.3.0-alpha02
  • Runner 1.3.0-alpha02
  • Rules 1.3.0-alpha02
  • Truth 1.3.0-alpha02
    • 更新到 com.google.truth:truth:1.0 和 com.google.guava:guava:27.0.1-android

版本 1.2.1-alpha01

2019年6月17日

这是 AndroidX Test 1.2.1 的 alpha 版本。新的 API 可能会更改。它包含对以下库的更新:

  • Core 1.2.1-alpha01
    • 包含针对“MethodParameter 属性中的无效参数计数”构建警告的工具链修复
  • Espresso 3.3.0-alpha01
    • contrib:将 RecyclerView.findViewHolderForPosition 方法的用法替换为其替代方法
  • Intents 3.3.0-alpha01
  • JUnit 1.1.2-alpha01
  • Monitor 1.3.0-alpha01
  • Orchestrator 1.3.0-alpha01
  • Runner 1.3.0-alpha01
  • Rules 1.3.0-alpha01
    • 允许 ServiceTestRule 的子类自定义超时时间
  • Truth 1.3.0-alpha01
    • 添加Location的truth扩展。

版本 1.2.0

版本 1.2.0

2019年5月29日

这是 AndroidX Test 1.2.0 的稳定版本。它包含对以下库的更新:

  • Core 1.2.0
  • Espresso 3.2.0
  • Intents 3.2.0
  • JUnit 1.1.1
  • Monitor 1.2.0
  • Orchestrator 1.2.0
  • Runner 1.2.0
  • Rules 1.2.0
  • Truth 1.2.0

版本 1.2.0-beta01

2019年5月6日

这是 AndroidX Test 1.2.0 的 beta01 版本。它包含对以下库的更新:

  • Core 1.2.0-beta01
    • 更优雅地处理测试中使用多个 ActivityScenario 的情况
  • Espresso 3.2.0-beta01
  • Intents 3.2.0-beta01
  • JUnit 1.1.1-beta01
  • Monitor 1.2.0-beta01
    • Instrumentation.runOnMainSync() 将异常传播回调用线程
  • Orchestrator 1.2.0-beta01
  • Runner 1.2.0-beta01
  • Rules 1.2.0-beta01
  • Truth 1.2.0-beta01

版本 1.2.0-alpha05

2019年4月30日

这是 AndroidX Test 1.2.0 的 alpha 版本。新的 API 可能会更改。它包含对以下库的更新:

  • Core 1.2.0-alpha05
    • 使 ActivityScenario#onActivity 可从主线程调用
  • Espresso 3.2.0-alpha05
    • 进一步减少 openActionBarOverflowOrOptionsMenu 的不稳定性
  • Intents 3.2.0-alpha05
  • JUnit 1.1.1-alpha05
  • Monitor 1.2.0-alpha05
  • Orchestrator 1.2.0-alpha05
  • Runner 1.2.0-alpha05
  • Rules 1.2.0-alpha05
  • Truth 1.2.0-alpha05
    • 更新到上游 google Truth 0.44

版本 1.2.0-alpha04

2019年4月18日

这是 AndroidX Test 1.2.0 的 alpha 版本。新的 API 可能会更改。它包含对以下库的更新:

  • Core 1.2.0-alpha04
  • Espresso 3.2.0-alpha04
    • 减少 openActionBarOverflowOrOptionsMenu 的不稳定性
    • 在 androidx.test 中添加一个钩子,用于模拟本地测试环境的窗口焦点更改
  • Intents 3.2.0-alpha04
  • JUnit 1.1.1-alpha04
  • Monitor 1.2.0-alpha04
  • Orchestrator 1.2.0-alpha04
  • Runner 1.2.0-alpha04
    • 如果不存在旧的 android.test 类,则使 androidx.test 可工作
  • Rules 1.2.0-alpha04
  • Truth 1.2.0-alpha04

版本 1.2.0-alpha03

2019年4月7日

这是 AndroidX Test 1.2.0 的 alpha 版本。新的 API 可能会更改。它包含对以下库的更新:

  • Core 1.2.0-alpha03
    • 向 ActivityScenario 添加 getState() API
  • Espresso 3.2.0-alpha03
    • 将 WithTagKeyMatcher 转换为接受 Matcher<?> 而不是 Matcher
    • 更新到 espresso 设置文档的链接
    • 修复在不同语言环境中运行时的调试日志记录
  • Intents 3.2.0-alpha03
  • JUnit 1.1.1-alpha03
  • Monitor 1.2.0-alpha03
    • 再次尝试清除异常处理程序以防止 Robolectric 中的内存泄漏。
  • Orchestrator 1.2.0-alpha03
  • Runner 1.2.0-alpha03
    • 添加一个 tests_regex AJUR 选项,用于运行与给定正则表达式匹配的测试。
  • Rules 1.2.0-alpha03
  • Truth 1.2.0-alpha03
    • 公开 ParcelableSubject API
    • 添加 BundleSubject#longInt
    • 添加 IntentSubject#hasComponent

版本 1.1.1

版本 1.1.1-alpha02

2019年3月7日

这是 AndroidX Test 1.1.1 的 alpha 版本。新的 API 可能会更改。它包含对以下库的更新:

  • Espresso 3.2.0-alpha02
  • Intents 3.2.0-alpha02
    • 添加 IntentMatchers#filterEquals
    • 修复 Intents#intended() 中的 Activity 生命周期计时错误。它现在在检查 Activity 状态之前使主循环空闲。
  • Runner 1.1.2-alpha02
    • 允许同时指定包和类过滤器。
  • Truth 1.2.0-alpha02
  • JUnit 1.1.1-alpha02
  • Core 1.1.1-alpha02
    • 无法解析 Activity 时抛出 RuntimeException。
  • Monitor 1.1.2-alpha02
    • 清除对未捕获异常处理程序的引用,以防止 Robolectric 中的内存泄漏。
  • Rules 1.1.2-alpha02
  • Orchestrator 1.1.2-alpha02

版本 1.1.1-alpha01

2019年1月30日

这是 AndroidX Test 1.1.1 的 alpha 版本。新的 API 可能会更改。它包含对以下库的更新:

  • Espresso 3.1.2-alpha01
    • 添加 AccessibilityChecks.disable() 方法。
  • Intents 3.1.2-alpha01
    • 添加 IntentMatchers#hasDataString
    • 修复 Intents#intended() 中的 Activity 生命周期计时错误。它现在在检查 Activity 状态之前使主循环空闲。
  • Runner 1.1.2-alpha01
    • AndroidJUnitRunner 现在接受 -e 注释选项中的逗号分隔的类列表,用于仅运行具有所有给定注释的测试
  • Truth 1.1.1-alpha01
    • 添加 filtersEquallyTo() 到 IntentSubject,用于使用 Intent.filterEquals() 比较意图。
  • JUnit 1.1.1-alpha01
  • Core 1.1.1-alpha01
  • Monitor 1.1.2-alpha01
  • Rules 1.1.2-alpha01
  • Orchestrator 1.1.2-alpha01

版本 1.1.0

版本 1.1.0

2018年12月13日

这是 AndroidX Test 1.1.0 的稳定版本。它包含对以下库的更新:

  • Espresso 3.1.1
  • Runner 1.1.1
  • Rules 1.1.1
  • Monitor 1.1.
  • AndroidTestOrchestrator 1.1.1
  • Core 1.1.0
  • Truth 1.1.0
  • JUnit 1.1.0

  • Core 1.1.0

    • 使 ActivityScenario 支持启动另一个 Activity 的 Activity

版本 1.1.0-beta01

2018年12月6日

这是 AndroidX Test 1.1.0 的 beta01 版本。它包含对以下库的更新:

  • Core 1.1.0-beta01
    • 新的 core-ktx kotlin 扩展构件!包含一个 kotlin 友好的 ActivityScenario.launchActivity API
    • 使用自定义意图启动 Activity 的新 ActivityScenario API
    • 接收 Activity 结果的新 ActivityScenario API
    • 使 ActivityScenario 可关闭
  • Espresso 3.1.1-beta01
    • 修改 withResourceNameMatcher 和 HumanReadables 以兼容 API 28。
    • 更新 ReplaceTextAction 的描述,以包含 stringToBeSet
    • 在 Robolectric 暂停循环模式下支持 Espresso。
  • JUnit 1.1.0-beta01
    • 新的 ActivityScenarioRule API,用于在测试设置和拆卸时自动启动和关闭 Activity
    • 新的 junit-ktx Kotlin 扩展构件!包含一个 Kotlin 友好的 ActivityScenarioRule API
  • Runner 1.1.1-beta01
    • 使 -e package 和 -e testFile 在接收包时的行为一致
  • Truth 1.1.0-beta01
    • 添加 bool、parcelable 和 parcelableAsType BundleSubject API
  • Rules 1.1.1-beta01
  • Monitor 1.1.1-beta01
  • AndroidTestOrchestrator 1.1.1-beta01

版本 1.0.0

版本 1.0.0

2018年10月24日

  • 所有库
    • 将 minSdkVersion 设置为 14,并将 targetSdkVersion 设置为 28
  • Espresso 3.1.0
    • 修复 withContentDescription 以使其能够处理非字符串类型
    • 添加对在 Robolectric 上使用 Espresso 的支持
    • 问题 73044169:当 textAllCaps 启用时,Espresso ViewMatchers.withText 不起作用
    • 添加对注入一系列运动事件的支持
  • Intents
    • 添加用于检索意图列表的 Beta API。旨在与新的 Truth 断言一起使用
  • Runner 1.1.0
    • 添加对即时应用的支持
    • 弃用 androidx.test.runner.AndroidJUnit4 并替换为 androidx.test.ext.junit.runners.AndroidJUnit4
  • Monitor 1.1.0
    • 弃用 androidx.test.InstrumentationRegistry 并替换为 androidx.test.platform.app.InstrumentationRegistry 和 androidx.test.core.app.ApplicationProvider
  • AndroidTestOrchestrator 1.1.0
    • 仅当同时传递 'coverage' 和 'coverageFilePath' 参数时,才启用协调器覆盖处理。
    • 仅当设置了 -debug 时才等待调试器,但不会列出 ATO 测试用例。添加了一个新的 orchestratorDebug 标志用于调试协调器本身
  • Core 1.0.0
    • 新的构件!包含支持本地和设备上测试的新 API
      • 检索上下文:ApplicationProvider
      • 控制 Activity 生命周期:ActivityScenario(Beta)
      • MotionEvent、PackageInfo 的构建器
      • Parceables 实用程序类
  • Truth 1.0.0
    • 新的构件!包含针对 Notification、Intent、Bundle、Parcelable 和 MotionEvent 的自定义 Truth 主题
  • JUnit 1.0.0
    • 新的构件!包含支持本地和设备上测试的 JUnit 运行程序类 androidx.test.ext.junit.runners.AndroidJUnit4。