feat: add Android and iOS tester skills
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
# iOS 真机路径
|
||||
|
||||
## 环境检查
|
||||
|
||||
在 macOS 上确认:
|
||||
|
||||
- 设备通过 USB 或网络连接。
|
||||
- 设备已在 Xcode/Device Hub 中配对。
|
||||
- Developer Mode 已开启。
|
||||
- Xcode 能看到设备并将其作为 run destination。
|
||||
- 项目签名、Team、Provisioning Profile 和设备支持版本完整。
|
||||
|
||||
Linux 上的 `libimobiledevice` 之类工具最多用于有限的设备识别或文件操作,不能替代
|
||||
Xcode 的完整构建、签名、安装和 XCTest 链路。没有远程 Mac 时,不把有限识别结果报告为
|
||||
完整 iOS 测试环境通过。
|
||||
|
||||
## 执行
|
||||
|
||||
- 使用项目明确提供的 `xcodebuild test` 或等价测试命令。
|
||||
- destination 必须绑定已检查的设备,不在多台设备中猜目标。
|
||||
- 安装、签名、修改设备设置属于有副作用的操作,必须明确授权。
|
||||
- 测试失败时保留 xcodebuild 日志、测试报告和设备诊断信息。
|
||||
|
||||
## 收尾
|
||||
|
||||
- 不重启、抹掉或清除真机数据。
|
||||
- 不移除配对、不修改钥匙串和签名配置。
|
||||
- 报告设备型号、系统版本、destination 和签名状态。
|
||||
@@ -0,0 +1,34 @@
|
||||
# iOS 通用环境检查
|
||||
|
||||
## 目标判定
|
||||
|
||||
先明确以下之一:
|
||||
|
||||
- `local-device`:当前 macOS 连接的 iPhone/iPad。
|
||||
- `local-simulator`:当前 macOS 的 Xcode Simulator。
|
||||
- `remote-mac`:用户提供的远程 Mac 执行命令或 CI 入口。
|
||||
- `cloud-device`:用户提供的云设备执行入口。
|
||||
|
||||
Linux 本机不是有效的 `local-simulator`。若用户要求在 Linux 本机跑 Simulator,应停止
|
||||
并记为 `environment-fail`,同时说明需要 Mac 或远程 Mac。
|
||||
|
||||
## macOS 检查
|
||||
|
||||
```bash
|
||||
xcode-select -p
|
||||
xcodebuild -version
|
||||
xcrun simctl list devices available
|
||||
```
|
||||
|
||||
还要确认:
|
||||
|
||||
- Xcode 版本与项目部署目标兼容。
|
||||
- 对应 iOS Simulator runtime 已安装。
|
||||
- workspace/project、scheme 和 destination 存在。
|
||||
- 测试所需的签名和开发团队配置存在。
|
||||
|
||||
## Linux 检查
|
||||
|
||||
Linux 只能作为测试编排端或远程执行端。不要安装所谓的“Linux iOS Simulator”,也不
|
||||
使用 Android Emulator 代替。若使用远程 Mac,检查用户提供的连接/执行入口,不在 skill
|
||||
中保存 SSH 密码、Apple 账号或云平台 token。
|
||||
@@ -0,0 +1,28 @@
|
||||
# iOS 结果报告
|
||||
|
||||
每次运行生成项目约定的运行快照和成绩单;如果项目已接入 `.pouch/tester/`,复用其
|
||||
`runs/<run-id>.yaml` 与 `.csv`,否则使用项目指定的报告目录,不覆盖已有结果。
|
||||
|
||||
对话报告格式:
|
||||
|
||||
```text
|
||||
## ios-tester 运行:完成 | 部分完成 | 阻塞
|
||||
|
||||
路径: local-device | local-simulator | remote-mac | cloud-device
|
||||
目标: 型号/系统版本/destination
|
||||
环境: 通过项;阻塞项
|
||||
计数: pass=N fail=N environment-fail=N skipped=N not-run=N
|
||||
失败: 用例或测试名称 + 一句证据
|
||||
产物: xcodebuild 日志、测试报告、截图或诊断包
|
||||
快照: <运行快照路径>
|
||||
成绩单: <成绩单路径>
|
||||
下一步: 一句话
|
||||
```
|
||||
|
||||
判定规则:
|
||||
|
||||
- 没有 Xcode、runtime、设备配对、签名或远程执行入口:`environment-fail`。
|
||||
- 产品断言或 XCTest 失败:`fail`。
|
||||
- 未授权的安装、签名或数据修改:`skipped`。
|
||||
- 失败即停后未执行的测试:`not-run`。
|
||||
- Linux 本地要求 Simulator 时,明确写出“官方 Simulator 不支持 Linux 本机运行”。
|
||||
@@ -0,0 +1,33 @@
|
||||
# iOS Simulator 路径
|
||||
|
||||
## 硬边界
|
||||
|
||||
Apple 官方 Simulator 随 Xcode 提供并运行在 Mac 上。Linux/Debian 不能本地安装官方
|
||||
iOS Simulator,因此 Linux 本机只能转发到远程 Mac、macOS CI 或云设备。
|
||||
|
||||
## macOS 环境检查
|
||||
|
||||
```bash
|
||||
xcode-select -p
|
||||
xcodebuild -version
|
||||
xcrun simctl list runtimes
|
||||
xcrun simctl list devices available
|
||||
```
|
||||
|
||||
必须存在:
|
||||
|
||||
- Xcode。
|
||||
- 与项目兼容的 iOS Simulator runtime。
|
||||
- 用户指定的设备类型和系统版本。
|
||||
- 可用的 workspace/project、scheme 和 destination。
|
||||
|
||||
若 runtime 缺失,可在用户明确要求安装时使用 Xcode 的 Components 设置或
|
||||
`xcodebuild -downloadPlatform iOS` 下载。该安装只能发生在 macOS,不属于 Debian 安装
|
||||
能力。
|
||||
|
||||
## 执行与收尾
|
||||
|
||||
- 启动并等待指定 Simulator 完成 boot。
|
||||
- 只执行目标 scheme 的测试,不将 Simulator 结果外推为真实设备硬件结论。
|
||||
- 失败时保留 xcodebuild 输出、Simulator 日志和截图/测试产物。
|
||||
- 只关闭本轮由 skill 启动且配置为临时会话的 Simulator。
|
||||
Reference in New Issue
Block a user