You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

mocha测试Firebase Cloud Functions导入firebase-functions-test报错如何解决

问题原因

你的报错核心是版本不兼容:旧版firebase-functions-test@0.2.3会直接引用firebase-functions的内部路径./lib/encoder,而你当前安装的firebase-functions版本已经把这个内部路径从包导出规则里移除了,所以触发了ERR_PACKAGE_PATH_NOT_EXPORTED错误。

解决方案

1. 升级兼容版本的依赖

执行以下命令升级对应包:

# 升级生产依赖
npm install firebase-functions@latest firebase-admin@latest --save
# 升级测试依赖
npm install firebase-functions-test@latest --save-dev

升级后firebase-functions-test会到0.3.x及以上版本,官方已经在这个版本修复了内部路径引用的问题。

2. 调整import语法

新版本firebase-functions-test的TS导入写法调整为默认导入,修正后的测试代码如下:

import test from "firebase-functions-test";
import { assert } from "chai";

// 初始化测试实例,本地用emulator测试不需要传参数
const testInstance = test();
describe("Sanity Check", () => {
  it("should pass", () => {
    assert.equal(0, 0);
    testInstance.cleanup();
  });
});

3. 现有配置无需修改

你当前的package.json里的mocha测试命令、tsconfig.json配置都适配Node14运行环境,不需要额外调整。

修改完成后重新执行npm run test即可正常运行测试。


内容的提问来源于stack exchange,提问作者Cupid Chan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 04:45:05