首页 > 解决方案 > 使用 Prisma Migrate 运行集成测试时出错

问题描述

对于迁移管理,我决定使用Prisma Migrate而不是node-pg-migrate(PostgreSQL)。我按照链接中的说明进行操作,一切正常。但是,主要挑战是我的集成测试在尝试在测试数据库(而不是开发数据库)上运行迁移时失败。如何覆盖我的测试数据库的配置?

node-pg-migrate运行集成测试之前,我可以简单地提供配置:

import migrationRunner from 'node-pg-migrate';

// --- Integration test setup:
beforeAll(async () => {
  await migrationRunner({
    migrationsTable: dbConfig['migrations-table'],
    dir: dbConfig['migrations-dir'],
    schema: dbConfig.schema,
    databaseUrl: databaseURL,
    // --- other configs
  });
}, config.get('test').timeout);

标签: postgresqltestingprisma

解决方案


您可以在测试设置中直接覆盖整个连接字符串,如下所示。Prisma 从环境变量中读取 DB 字符串,因此以下列方式覆盖将正常工作。


推荐阅读