我正在使用 jest并试图模拟node-redis使用 redis-mock .
// redis.js
const redis = require("redis");
const client = redis.createClient({ host: '127.0.0.1', port: 6379 });
// redis.test.js
const redisMock = require("redis-mock");
describe("redis", () => {
jest.doMock("redis", () => jest.fn(() => redisMock));
const redis = require("./redis");
});
当我运行测试时,我得到一个错误TypeError: redis.createClient is not a function
我觉得我在使用
jest.doMock()
时做错了什么.将不胜感激您的帮助。
最佳答案
以下对我有用:
import redis from 'redis-mock'
jest.mock('redis', () => redis)
我不包括
redis
测试中的库,但我只将它包含在包含测试类的文件中。 (当然,带有测试类的文件包含在测试文件中。)
关于javascript - 如何使用 jest 模拟 node-redis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60541602/