gpt4 book ai didi

带有 Jest 的组件中的javascript模拟导入

转载 作者:行者123 更新时间:2023-11-28 21:22:33 25 4
gpt4 key购买 nike

知道如何模拟“导入”进行测试吗?我现在用 jest。

即:

//browser.js
export const browser = {
id: undefined
};
export const getBrowser = function() {
return browser;
};


//fetch-data.js
//code that uses the browser and I wanna test
import {getBrowser} from './../components/browser';

export const fetchData = function() {
const browser = getBrowser();
return Object.assign({dontcare:1}, browser);
};



//My test... Im using jest
import {fetchData} from './../fetch-data.js';
expect(fetchData()).toBe({......});
};

现在在测试文件中,我想模拟 browser 组件的响应......

有什么想法吗?

谢谢!

最佳答案

在其中一个帖子的帮助下最终解决了它,但使用 Sinnon.js 的方式不同

1) 我在测试中导入了浏览器组件:

import * as browserModule from './../components/browser';

2) 现在在我的测试中我将模拟我想要的方法:

 sinon.stub(browserModule, 'getBrowser').returns({id: 1});

3) 从这里一切都很好,我调用了我的测试对象,它得到了正确的模拟响应:)

关于带有 Jest 的组件中的javascript模拟导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48092284/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com