最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

Nest.js ConfigService 在 e2e 测试中不工作(配置验证错误)

网站源码admin33浏览0评论

Nest.js ConfigService 在 e2e 测试中不工作(配置验证错误)

Nest.js ConfigService 在 e2e 测试中不工作(配置验证错误)

我的 .env 文件包含

NODE_ENV=development
变量,但出现以下错误:

● 测试套件运行失败

Config validation error: "NODE_ENV" must be one of [development, production]

  11 |   imports: [
  12 |     DatabaseModule,
> 13 |     ConfigModule.forRoot({
     |                  ^
  14 |       isGlobal: true,
  15 |       validationSchema,
  16 |       validationOptions: {

  at Function.forRoot (../node_modules/@nestjs/config/dist/config.module.js:75:23)
  at Object.<anonymous> (../src/app.module.ts:13:18)
  at Object.<anonymous> (app.e2e-spec.ts:4:1)

我的测试:

describe('AppController (e2e)', () => {
  let app: INestApplication;

  beforeEach(async () => {
    const moduleFixture: TestingModule = await Test.createTestingModule({
      imports: [AppModule],
    })pile();

    app = moduleFixture.createNestApplication();
    await app.init();
  });

  it('/user (GET)', () => {
    return request(app.getHttpServer()).post('/user').expect(200);
  });
});

我的验证文件:

export default Joi.object({
  NODE_ENV: Joi.string()
    .valid('development', 'production')
    .default('development'),
  ...
});

我的应用程序模块:

@Module({
  imports: [
    ConfigModule.forRoot({
      isGlobal: true,
      validationSchema,
      validationOptions: {
        allowUnknown: true,
        abortEarly: false,
      },
    }),
    ...
  ],

当我运行 nest start:dev 一切顺利,单元测试也运行正常

回答如下:
发布评论

评论列表(0)

  1. 暂无评论