gpt4 book ai didi

javascript - 使用 sinon js 库模拟测试代码使用的现有函数

转载 作者:行者123 更新时间:2023-11-29 16:01:19 25 4
gpt4 key购买 nike

我是 js 现代编程和测试的新手,所以我可能会使用不正确的术语。我正在使用 React 和 ES6 语法并使用 jest 和 sinon 进行测试。

我想在我的代码中模拟/ stub /替换现有函数,这样它就不会被调用并返回预定结果。

我会在这里添加代码来测试

import get_products from './products';

function fetchProducts() {

some_code()

get_products()

some_more_code()

}

在我的测试中

import 'fetchProducts' from '../main';

test('fetchProducts', () => {

fetchProducts();

})

我想做的是模拟 get_products() 函数,这样它就不会被实际调用,而是在测试 fetchProducts() 函数时返回一个预定的结果。我看了几天 sinon 的帮助,但无法弄清楚。

谢谢大家!

最佳答案

我没有对此进行测试,但应该会按预期工作。

before(function() {
sinon.stub(get_products).yields(null, JSON.stringify({ hello: 'World!' }));
});

it('get_products should be called', function() {
fetchProducts();
get_products.called.should.be.equal(true);
});

让我知道它是否有效。

关于javascript - 使用 sinon js 库模拟测试代码使用的现有函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52882985/

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