Workers 平台提供多种测试应用的方式,具体取决于你的需求。我们推荐使用 Vitest 集成,它允许你在 Workers 运行时 内部 运行测试,并对 Worker 中的各个函数进行单元测试。
开始使用 Vitest
不过,如果你不使用 Vitest,Miniflare 的 API 和 unstable_startWorker() API 都提供了在任何测试框架中测试 Worker 的选项。
| 功能 | Vitest 集成 | unstable_startWorker() |
Miniflare 的 API |
|---|---|---|---|
| 单元测试 | ✅ | ❌ | ❌ |
| 集成测试 | ✅ | ✅ | ✅ |
| 加载 Wrangler 配置文件 | ✅ | ✅ | ❌ |
| 在测试中直接使用绑定 | ✅ | ❌ | ✅ |
| 按测试隔离的存储 | ✅ | ❌ | ❌ |
| 出站请求模拟 | ✅ | ❌ | ✅ |
| 多 Worker 支持 | ✅ | ✅ | ✅ |
| 直接访问 Durable Objects | ✅ | ❌ | ❌ |
| 立即运行 Durable Object 闹钟 | ✅ | ❌ | ❌ |
| 列出 Durable Objects | ✅ | ❌ | ❌ |
| 测试 Durable Object 驱逐 | ✅ | ❌ | ❌ |
| 测试 service Worker | ❌ | ✅ | ✅ |