SuperAPI AI 工具集

testing

测试与质量

查看项目

更新于 10-16 08:35

技能介绍

用途:在 Contentstack Utils Swift 项目中新增或修改测试,调试不稳定测试,改进 fixtures 或 mocks。测试目标为 ContentstackUtilsTests,路径为 Tests/ContentstackUtilsTests/。

运行与工具:通过 swift test(SPM)和/或 Xcode scheme ContentstackUtils-Package(ContentstackUtils.xcodeproj)运行 XCTest,与 .github/workflows/ci.yml 保持一致。SwiftLint 配置为 .swiftlint.yml,其中 Tests/ContentstackUtilsTests/Constants.swift 被排除,其他测试文件仍受检查。Slather 配置为 .slather.yml,覆盖率报告忽略 Tests/*,但新增生产代码(Sources/ContentstackUtils/)时仍应尽量补测试。

命名与布局:文件名可用 *Tests.swift、*Test.swift 或面向功能的名称,如 GQLJsonToHtml.swift、JsonNodes.swift、VariantUtilityTests.swift。优先复用已有 fixtures 与 mocks,如 JsonNodes.swift、JsonNodesHtmlResults.swift、EmbededModelMock.swift、CustomRenderOptionMock.swift、TestClient.swift,避免新增重复辅助文件。

集成与单元:没有单独的集成测试目录,测试都放在 ContentstackUtilsTests 中,用 mocks 模拟 API 形态的载荷,CI 中不进行真实网络请求,也不使用凭据。

Linux 与发现:若工作流需要显式 Linux 测试发现,需维护 XCTestManifests.swift。

限制与安全:测试为离线运行,不要提交 API key 或真实 token。参考资料为 skills/dev-workflow/SKILL.md 与 skills/code-review/SKILL.md。