SuperAPI AI 工具集

temporal-python-testing

测试与质量

查看项目

更新于 10-16 07:43

技能介绍

用途

该技能用于为 Temporal Python 工作流设计并落地测试策略,基于 pytest 提供单元测试、集成测试、重放测试与本地开发环境搭建的指导。它面向需要在生产前后验证工作流行为、追求快速反馈与高覆盖率的团队。

主要能力

  • 单元测试:使用 WorkflowEnvironment 并开启时间跳跃,让长时间跨度的工作流快速执行;使用 ActivityEnvironment 直接测试活动。
  • 集成测试:在 Worker 中运行工作流,通过模拟活动隔离外部依赖,支持错误注入、多活动工作流、信号与查询测试。
  • 重放测试:对生产历史进行重放,验证确定性,并用于部署工作流变更前的版本兼容性检查。
  • 本地开发:提供 Docker Compose 配置、pytest 设置与配置、覆盖率工具集成及开发工作流。
  • CI/CD 集成:将上述测试纳入自动化流水线。

使用方式

官方给出的推荐路径是:大多数测试写成集成测试;使用 pytest 的异步 fixture;用时间跳跃获得快速反馈;模拟活动来隔离工作流逻辑;用重放测试验证确定性。技能采用渐进式披露,按需加载 resources 目录下的具体文档:unit-testing.md(测试单个工作流或活动)、integration-testing.md(模拟外部依赖)、replay-testing.md(验证确定性或部署工作流变更)、local-setup.md(搭建开发环境)。资料中提供了基础工作流测试与基础活动测试的示例代码,包括 pytest fixture、Worker 启动、execute_workflow 调用以及 ActivityEnvironment.run 的用法。

适用场景

适合需要对 Temporal 工作流做单元验证、带模拟依赖的集成验证、基于生产历史的重放校验,以及本地开发与 CI 自动化测试的 Python 项目。官方建议工作流与活动的逻辑覆盖率均达到 80% 以上,关键路径通过模拟活动做集成测试,所有工作流版本在部署前完成重放测试。

限制

资料未提供具体的环境版本要求、依赖安装命令、定价或平台支持范围等信息,相关内容暂未提供。