我是 TypeScript 新手,之前从事过 Java 工作。我正在寻找相当于 TypeScript 的 java junit(Mockito)。 在每个测试的 junit 中,我们可以定义依赖行为并根据测试用例需求返回响应。 Jest 中也有类似的方法吗? 我可以在其中简单地定义。 当(dependencyFunction()).then(mockResponse1);
并且在不同的测试中 当(dependencyFunction()).then(mockResponse2);
这是我的 typescript 类的样子:
class ABC {
static fun1(){
const xyz = await dependency();
return xyz === 'DONE';
}
}
在这里,我想编写测试用例,其中我可以在每个测试用例中定义模拟响应。
最佳答案
来自 documentation你可以为此使用模拟函数
并使用 mockReturnValueOnce
或 mockReturnValue
作为您的响应
const myMock = jest.fn();
myMock
.mockReturnValueOnce(10) // set the response once
.mockReturnValueOnce('x')
.mockReturnValue(true); // set a persistent response
console.log(myMock(), myMock(), myMock(), myMock());
// > 10, 'x', true, true
关于使用 jest 进行 javascript 单元测试 : how to mock async call,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47975849/