跳到主要内容
标准测试可确保您的集成按预期工作。 当您为自己创建自定义类或在 LangChain 集成中发布时,有必要添加测试以确保它按预期工作。LangChain 为您提供了针对每种集成类型的一整套测试。本指南将向您展示如何将 LangChain 的标准测试套件添加到每种集成类型中。

设置

首先,安装所需的依赖项
npm install @langchain/core
npm install @langchain/standard-tests
langchain-tests 包中有 2 个命名空间
位置src.unit_tests旨在独立测试组件,无需访问外部服务查看 API 参考
位置src.integration_tests旨在测试可访问外部服务的组件(特别是组件旨在与之交互的外部服务)查看 API 参考

实施标准测试

根据您的集成类型,您需要实现单元测试或集成测试,或两者都实现。 通过子类化您的集成类型的标准测试套件,您可以获得该类型的所有标准测试。为了使测试运行成功,只有当模型支持正在测试的功能时,给定测试才应通过。否则,应跳过测试。 由于不同的集成提供独特的功能集,LangChain 提供的大多数标准测试默认情况下都是可选的,以防止误报。因此,您需要重写属性以指示您的集成支持哪些功能 - 有关示例,请参阅以下示例。
tests/chat_models.standard.int.test.ts
// Indicate that a chat model supports parallel tool calls

class ChatParrotLinkStandardIntegrationTests extends ChatModelIntegrationTests<
    ChatParrotLinkCallOptions,
    AIMessageChunk
> {
    constructor() {
        // ... other required properties

        super({
            // ... other required properties
            supportsParallelToolCalls: true,  // (The default is False)
            // ...
        });
    }
您应将测试组织在相对于包根目录的这些子目录中
  • tests/unit_tests 用于单元测试
  • tests/integration_tests 用于集成测试
要查看可配置功能及其默认值的完整列表,请访问标准测试的API 参考 以下是一些流行集成中标准测试的示例实现:
  • 单元测试
  • 集成测试

运行测试

待办

故障排除

有关可用标准测试套件的完整列表,以及有关包含哪些测试以及如何解决常见问题的信息,请参阅标准测试 API 参考
以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。
© . This site is unofficial and not affiliated with LangChain, Inc.