首页 > 解决方案 > 运行 Jenkins 作业时“Reflect.getMetadata 不是函数”

问题描述

我有一个运行测试和构建图像的 Jenkins 工作。我在工作中的单元测试有问题。

task runTests(type: NpmTask) {
    dependsOn(tasks['lintTS'])
    args = ['run', 'test']
}

当我在本地运行时,一切正常,但是当我运行作业时,出现以下错误 -

> scim-api@0.0.1 test /var/lib/jenkins/workspace/e-commits_feature_handle-commits

> jest

FAIL src/app.controller.spec.ts

  ● Test suite failed to run
    TypeError: Reflect.getMetadata is not a function
      at Optional (../node_modules/@nestjs/common/decorators/core/optional.decorator.js:21:34)
      at ../node_modules/tslib/tslib.js:100:41
      at Object.__decorate (../node_modules/tslib/tslib.js:95:99)
      at Object.<anonymous> (../node_modules/@nestjs/common/services/logger.service.js:118:29)
      at Object.<anonymous> (../node_modules/@nestjs/common/utils/load-package.util.js:3:26)

我的测试中的任何地方都没有 @Optional 装饰器。

你知道为什么会发生这种情况吗?

标签: node.jstypescriptjenkinsgradlejestjs

解决方案


推荐阅读