OC
OpenClaw 中文解释版

给五岁小朋友也能看懂的说明书

简要总结

Testing

这页说明书在讲 OpenClaw 是怎么做“测试”的。你可以把它想象成给积木城堡做检查,看看它搭得牢不牢。这里会告诉你,平时写代码时应该运行哪个“检查命令”,还有当你想用真正的积木(也就是真实的AI模型)来测试时,该怎么操作。如果你在修改代码,或者想知道你的AI助手是不是真的能工作,就可以看看这页。

五岁小孩版解释

OpenClaw 有三种主要的测试,就像三种不同的检查游戏。

第一种是单元和集成测试,命令是 pnpm test。这就像检查每一块小积木是不是形状正确,以及几块积木拼在一起会不会卡住。它跑得很快,也不需要真的去联系外面的AI公司。这是你每次提交代码前都应该做的检查。

第二种是端到端测试,命令是 pnpm test:e2e。这就像把好几座小城堡连起来,看看它们能不能顺畅地传递消息。它检查的是网络连接、配对这些更复杂的事情,所以会比第一种慢一点,但也不需要真的AI钥匙。

第三种是真实环境测试,命令是 pnpm test:live。这就像用真正的、会动的玩具来测试你的城堡!它会真的去联系 OpenAI、Google 这些公司,用你账户里的真钥匙,看看模型今天是不是还能正常工作。这个测试可能会因为网络问题失败,而且会花掉你账户里的钱或使用次数,所以不要随便跑全部,最好只跑你想检查的那一小部分。

平时该用哪个命令?

很简单,记住这几个:

  1. 平时改完代码,准备提交前,运行:pnpm build && pnpm check && pnpm test。这是一个完整的检查。
  2. 如果你改了很多代码,想看看有没有漏掉什么,可以再加一个:pnpm test:coverage
  3. 如果你动了网络或配对相关的代码,再加一个:pnpm test:e2e
  4. 如果你发现AI助手好像坏了,或者某个AI公司(比如OpenAI)出问题了,就用:pnpm test:live,并且最好只测试有问题的那个模型。

关于“真实环境测试”的更多细节

真实测试又分成两层,这样我们就能知道问题出在哪里了。

第一层:直接问模型。测试文件是 src/agents/models.profiles.live.test.ts。这一步就像直接拿起电话问AI:“喂,你还在吗?” 它只用你的钥匙去问模型一个简单问题,不经过城堡的其他部分。要运行它,你需要设置 OPENCLAW_LIVE_MODELS=modern

第二层:通过整个城堡问模型。测试文件是 src/gateway/gateway-models.profiles.live.test.ts。这一步就像让城堡里的信使去送信,并让AI助手完成一些任务,比如读一个文件,或者执行一个命令。它会测试工具调用、发送图片等完整流程。

怎么只测试一个模型?

你可以用一些“魔法词语”(环境变量)来告诉测试只检查谁。比如:

  • 只想测试 OpenAI 的 GPT-5.2 模型:OPENCLAW_LIVE_MODELS="openai/gpt-5.2" pnpm test:live src/agents/models.profiles.live.test.ts
  • 想通过城堡测试 GPT-5.2:OPENCLAW_LIVE_GATEWAY_MODELS="openai/gpt-5.2" pnpm test:live src/gateway/gateway-models.profiles.live.test.ts

一些重要的提醒

  • 钥匙要保管好:测试用的AI钥匙(API Key)和你平时用的一样,它们放在 ~/.openclaw/credentials/ 文件夹里。千万不要把这些钥匙上传到网上!
  • 小心花钱:真实环境测试会真的去调用AI服务,可能会花掉你账户里的钱或者次数,所以跑之前要想清楚。
  • 可能会失败:因为要连接真实的网络和AI公司,这个测试有时候会因为网络慢、AI公司服务出问题而失败,这不一定是你的代码错了。
  • 用Docker检查:如果你想知道你的代码在Linux系统里能不能工作,可以用 pnpm test:docker:live-models 这样的命令,它会在一个模拟的Linux小盒子里运行测试。

其他特殊的测试

说明书里还提到了一些特别的测试,比如测试连接安卓手机、测试 Claude Code CLI 本地工具、测试语音转文字(Deepgram)等等。当你有这些特殊需要时,可以按照说明书里的命令和设置去运行它们。