0.0.1-alpha15
此版本包含以下 bug 修复:
| 问题 | 说明 |
|---|---|
| 问题 500417360 | 修复了以下问题:在 Kotlin 2.1 及更高版本中运行预览版时,由于 Layoutlib 框架的隔离类加载器中缺少 kotlin-stdlib 依赖项,导致初始化崩溃 (NoClassDefFoundError)。 |
| 问题 384188032 | 修复了在可组合项 AndroidView 工厂内膨胀 ViewHolder 对象时发生的渲染崩溃。 |
| 问题 351302272 | 修复了预览中可绘制资源加载失败的问题,其中资源位于同级或依赖的项目模块中。 |
| 问题 482664893 | 确保在屏幕截图测试抛出异常时,验证任务会正确失败,而不是使用过时的屏幕截图错误地成功。 |
| 问题 497675618 | 支持通过 JVM 覆盖率代理(例如 JaCoCo)对可组合类进行插桩。 |
| 问题 498545960 | 从 JUnit 控制台错误堆栈轨迹中剥离了内部文件名(例如 ImageVerifier.kt),以使调试输出更清晰。 |
| 问题 385613865 | 移除了测试结果 XML 文件中图片的绝对路径用法,并将其替换为相对路径。 |
| 问题 513276596 | 确保渲染失败会正确地使屏幕截图测试任务失败,而不是以空白屏幕截图静默通过。 |
| 问题 340639802 | 解决了预览方法解析冲突,即测试错误地与主来源集中的完全限定方法名称匹配。 |
0.0.1-alpha14
此版本包含以下 bug 修复和性能改进:
| 问题 | 说明 |
|---|---|
| 问题 469819154 | 修复了 Compose 渲染器中的内存泄漏问题。 |
| 问题 470058578 | 修复了更新参考图片时出现的界面冻结和内存错误。 |
| 问题 422412664 | 修复了 Windows 和 GitHub Actions 上的“命令行超出操作系统限制”错误。 |
| 问题 437223807 | 修复了多模块项目中的资源和资产解析问题。 |
| 问题 464899800 | 修复了 version.properties 中因命名冲突而导致的 Gradle 插件冲突。 |
| 问题 482433854 | 修复了使用 kotlin-reflect 或序列化的可组合项的初始化错误。 |
0.0.1-alpha13
此版本引入了以下功能:
- 可与 JDK 17 或更高版本兼容。
- 修复了多项 bug,并改进了与 Android Studio 的集成。
0.0.1-alpha12
此版本引入了以下功能:
- 与 Android Gradle 插件 (AGP) 9.0 的兼容性。
- 支持在 JDK 24 及更高版本上运行屏幕截图测试。
- 支持配置最大堆大小。
- 修复了渲染失败问题,并提高了测试稳定性。
- 增强了报告功能,可显示与新图片和参考图片相关的百分比差异和其他元数据。
0.0.1-alpha11
此版本引入了以下功能:
- 与 Android Gradle 插件 (AGP) 8.13 的兼容性。
- 添加了对解析具有十进制值的 XML 可绘制对象的支持,无论主机语言区域如何。
- 对于使用 JDK 24 或更高版本的宿主机,系统会选择兼容的 JDK (11-23),前提是已安装了此类 JDK。
0.0.1-alpha10
此版本引入了以下功能:
从该版本开始,您需要使用
@PreviewTest注解标记所有预览函数。没有注释的预览不会执行。参考图片目录已从
{module}/src/{variant}/screenshotTest/reference更改为{module}/src/screenshotTest{Variant}/reference。这是为了确保生成的参考图片不会成为正式版代码的一部分,并与其他测试类型的目录结构保持一致。{variant}PreviewScreenshotRender任务会被移除。图片渲染已迁移到 JUnit 测试引擎中。update{Variant}ScreenshotTest任务将在更新之前将新的渲染图片与参考图片进行比较。它只会更新差异大于指定阈值的图片。移除了--updateFilter命令行标志。
0.0.1-alpha06
此版本引入了以下功能:
图片差异阈值:借助这项新的全局阈值设置,您可以更精细地控制屏幕截图比较。如需进行配置,请更新模块的 build.gradle.kts:
testOptions {
screenshotTests {
imageDifferenceThreshold = 0.0001f // 0.01%
}
}
此阈值将应用于模块中定义的所有屏幕截图测试。
- 问题修复:修复了一些 Compose 渲染器 bug,并添加了对空 Compose 的支持。
- 性能增强:更新了图片差异比较算法,使其速度更快。