用途
automate-zero-native 是 zero-native 内置的自动化系统,用于检查和操作正在运行的 WebView 外壳(WebView shell)应用。它面向需要对运行中的应用进行测试、查看窗口列表、生成快照或截图的场景。
主要能力
该自动化系统通过位于 .zig-cache/zero-native-automation/ 的基于文件的 IPC 工作,提供以下命令能力:
- 列出窗口:zig-out/bin/zero-native automate list
- 生成快照:zig-out/bin/zero-native automate snapshot
- 截图:zig-out/bin/zero-native automate screenshot [path]
- 请求重载:zig-out/bin/zero-native automate reload
使用方式
前置条件:需要以启用自动化的方式运行应用,命令为:
zig build run-webview -Dplatform=macos -Dautomation=true
典型工作流:
- 以启用自动化的方式启动应用。
- 运行 zig-out/bin/zero-native automate snapshot 以确认窗口和 WebView 来源。
- 使用 zig-out/bin/zero-native automate reload 请求重载。
- 当占位截图产物足够时,使用 zig-out/bin/zero-native automate screenshot [path]。
相关构建命令:
zig build
适用场景
适用于对运行中的 zero-native WebView 外壳应用进行自动化检查与操作,例如测试应用、列出窗口、生成快照、请求重载或获取截图产物。
限制
- 自动化在编译期受开关控制:未使用 -Dautomation=true 构建的应用会忽略自动化文件。
- 当前截图产物是占位的 PPM 文件。
- WebView DOM 交互被有意排除在该基于文件的自动化层范围之外。