SuperAPI AI 工具集

python-testing-heavyweight

测试与质量

查看项目

更新于 10-16 04:55

技能介绍

用途:当项目有外部 API 依赖、功能依赖系统服务(如 DBus、特定二进制),或集成失败排查成本高、轻量测试无法覆盖关键路径时,采用真实基础设施而非打桩的测试方式。

主要能力与模式:容器化服务,用 docker-compose.test.yml 搭配模拟 API 与测试数据库;自定义模拟二进制,即模拟预期行为的真实可执行文件;会话级 fixture,每个测试会话只启动一次容器;真实 DBus,用 dbus-daemon --session 启动供测试使用。核心思路是以真实 HTTP 服务器替代对 requests.get 的 patch,以自定义模拟二进制替代对 subprocess.run 的 patch,以容器中的真实数据库替代数据库 Mock,以 tmp_path 中的真实文件系统替代被猴子补丁的文件操作,以真实守护进程实例替代被 Mock 的系统服务。

采用前需做投入判断:项目是否存活足够久以证明搭建成本合理;集成故障是否确实在发生;轻量测试能否覆盖约八成风险。三者若不同时满足,建议继续使用轻量测试。

参考:guides/testing-heavyweight.md,包含容器搭建、模拟二进制示例、CI 集成与有状态模拟服务器。具体安装命令、收费与平台信息暂未提供。