SuperAPI AI 工具集

testing

测试与质量

查看项目

更新于 10-15 16:49

技能介绍

用途:为 OpenCivilizations 游戏项目提供客户端与服务器测试的规范与实践指引,在编写测试或实现需要测试的功能时自动应用。

主要能力与结构:测试分为客户端(client/tests 下含 game、ui)、服务器(server/tests 下含 rooms、mechanics)、共享(shared/tests)三部分,分别覆盖游戏逻辑、UI 组件、房间逻辑、游戏机制与工具函数。

运行方式(命令保持原样):npm test(全部)、npm run test:client(仅客户端)、npm run test:server(仅服务器)、npm run test:watch(监听模式)、npm test -- path/to/test.spec.ts(指定文件)。

测试模式示例涵盖:服务端资源计算(如 calculateResources 按时间计算金币产出)、Colyseus 房间集成测试(使用 @colyseus/testing 的 ColyseusTestServer 创建房间、连接客户端、发送消息并等待 patch)、客户端寻路(findPath 绕过障碍)、共享等距转换(cartesianToIsometric / isometricToCartesian 往返转换)。

测试场景来源:docs/planning/stories/*.story.md,每个故事含验收标准(AC1、AC2 等),测试应映射到具体 AC。

最佳实践:充分测试服务端逻辑(多数游戏逻辑在服务端)、单元测试中 mock Colyseus 并用 @colyseus/testing 做集成、测试寻路边界情况(阻塞路径、不可达目标)、测试资源计算(基于时间、溢出、负数)、测试状态同步、使用描述性测试名称。

限制:资料未提供该技能的安装方式、版本要求、收费信息或具体平台支持范围。