【发布时间】:2021-03-11 12:08:57
【问题描述】:
我正在构建一个 ReactJS 17 应用程序并尝试测试以下调用是否与 Jest 一起发生。属性“dataObj”是我添加到全局窗口对象中的。
window.dataObj.send(event.name, ldo);
我正在我的测试中尝试这个......
const dataObj = {
send: jest.fn()
};
Object.defineProperty(window, 'dataObj', dataObj);
console.log(window.dataObj);
但是当我查询“window.dataObj”(使用该 console.log 语句)时,它总是返回未定义。如何模拟窗口对象的属性?
【问题讨论】:
-
你不需要defineProperty,除非该属性之前已经定义了一个。
标签: reactjs unit-testing jestjs mocking window