sinon相关内容

存根设置超时函数

我有一个函数WAIT async function wait(time) { return new Promise((resolve) => setTimeout(resolve, time)); } 我这样调用此等待:await wait(5000);来自另一个函数。 我正在编写单元测试用例,它始终执行等待,每个测试用例都等待5秒。 如何使用sinon将setTimeo ..
发布时间:2022-08-18 11:58:32 前端开发

测试节点-使用SINON FakeTimers调度

我想测试node-schedule包中的scheduleJob。使用SINONuseFakeTimers(),我可以跳过时间。不幸的是,我的日程安排程序似乎并不“相信”假时间。当我将调度器设置为1分钟时,它工作得很好,所以我知道它工作得很好。我也试着在通话前一分钟设置假时间,也不起作用。 SINON: let clock = sinon.useFakeTimers(moment().t ..
发布时间:2022-06-18 09:19:17 前端开发

SINON存根更换功能不起作用

我在这里的NodeJS中隔离了我面临的问题。依赖函数上的SINON存根不能按预期工作。我没有得到我在这里错过的东西。感谢你的帮助。以下是示例代码。 sinonTest.js "use strict"; function getSecretNumber () { return 44; } function getTheSecret () { return `The secret ..
发布时间:2022-06-17 23:55:07 其他开发

节点存根返回对象的方法

我有一个具有一些属性的模块。我按如下方式使用 Var propmodule = require('me-props'); var prop = new propmodule('server'); prop.get('min); //returns 3 prop.get('max') //returns 10 为了测试,我不得不对此进行模拟。下面的代码是否使用了proxyquire和sin ..
发布时间:2022-06-17 23:38:59 其他开发

测试后清除SINON存根

我的一个测试中有此存根: sinon.stub(service, 'batchNote') .resolves(mResponse); 测试后能不能把它清理掉?如果是,如何? 推荐答案 是的,有可能。 SinonAPI有restore方法用于stubs。来自docs 调用object.method.restore();(或stub.restore()) ..
发布时间:2022-06-17 23:24:39 前端开发

Sinonjs-将时钟提前到59分钟,并实际等待1分钟

我有一个用于自动注销功能的Web组件,它显示了第59分钟的消息模式窗口,并在没有活动的情况下再停留一分钟。如果用户没有点击窗口上的任何位置,则注销该用户。因此,一小时内没有任何活动将自动注销用户。该功能工作正常。 现在,为了测试此功能,我尝试使用sinonjs。我使用了FakeTimers,但无法达到效果。我正在尝试测试显示消息的模式窗口。 代码如下: const { When ..
发布时间:2022-06-17 23:20:59 前端开发

如何以多种方式调用或存根相同的导入函数

在控制器中,我导入了配置文件,用于获取用户ID的路径和秘密路径位置,并导入了auth文件,用于获取基于我重定向到某个端点的用户ID名称和密码值。但当我编写测试用例时,如何使用存根传递或获取所有细节。你能帮忙吗? Controler.ts import { userConf } from './conf'; import {userSec} from './auth' export ..
发布时间:2022-06-17 23:09:03 其他开发

为什么在调用createStubInstance的情况下仍调用构造函数?

我想防止类的构造函数在测试期间被调用,所以我按照文档使用了createStubInstance(MyClass),但构造函数仍然被调用。为什么? 如果要创建MyConstructor的存根对象,但不希望 要调用的构造函数,请使用此实用程序函数。 var存根=sinon.createStubInstance(MyConstructor) 测试 const sinon = re ..
发布时间:2022-06-17 23:04:30 其他开发

SINON假服务器未自动响应

您好,我正在使用FETCH测试一个集合,当我调用它时,只有在调用服务器之后才会有来自伪服务器的响应。Response我得到了所需的结果。 为什么? 我的代码 beforeEach( function() { server = sinon.fakeServer.create(); server.autoRespond = true; colhedoraL ..
发布时间:2022-06-17 22:47:21 前端开发

Sinon clock.tick不会提前setTimeout的时间

我正在为async函数编写一个测试,该函数执行一系列任务,并在执行更多任务之前等待60秒。我正在尝试使用sinon.useFakeTimers()跳过这60秒,以便可以在延迟后测试逻辑。 foo.js module.exports.foo = async f => { // ... more code ... await new Promise((resolve, reject ..
发布时间:2022-06-17 22:42:14 前端开发

Signon Stub/Spy使用不符合预期的Args

当我为SINON间谍或存根指定with Args时,我希望allCount只计算带有这些参数的调用。不过,这似乎并没有发生。 如果我运行以下命令: var mySpy = sinon.spy(); mySpy.withArgs("foo"); mySpy("bar"); expect(mySpy.callCount).to.be(0); 我得到“预期1等于0”。我疯了吗,这是个 ..
发布时间:2022-06-17 22:34:25 其他开发

调用calledOnce时Chai属性无效

我在用SINON和Chai编写测试时遇到了问题。 我正在尝试检查是否对间谍调用了函数并获取 ";错误:无效的Chai属性:calledOnce"; 我正在使用相同的测试依赖项在另一个项目中执行相同的操作,没有任何问题。 var udpSocketStub = this.sandbox.spy(udpSocket, 'send'); expect(udpSocket ..
发布时间:2022-06-17 22:24:35 前端开发