sinon相关内容
我有一个函数WAIT async function wait(time) { return new Promise((resolve) => setTimeout(resolve, time)); } 我这样调用此等待:await wait(5000);来自另一个函数。 我正在编写单元测试用例,它始终执行等待,每个测试用例都等待5秒。 如何使用sinon将setTimeo
..
假设您正在测试一个函数,该函数将使用不同的参数多次调用依赖项: var sut = { ImportantFunction: function(dependency){ dependency("a", 1); dependency("b", 2); } }; 使用QUnit+sinon并假定调用的顺序不重要,我可以编写以下测试,以确保函数按
..
我想测试node-schedule包中的scheduleJob。使用SINONuseFakeTimers(),我可以跳过时间。不幸的是,我的日程安排程序似乎并不“相信”假时间。当我将调度器设置为1分钟时,它工作得很好,所以我知道它工作得很好。我也试着在通话前一分钟设置假时间,也不起作用。 SINON: let clock = sinon.useFakeTimers(moment().t
..
对于FiRestore云函数类型脚本单元测试,我想模拟doc().id,但不是doc('path')。我应该怎么做? admin.firestore().collection('posts').doc().id // I only want to mock this one admin.firestore().collection('posts').doc('1') 我尝试在SINON
..
假设我这里有一个文件: // a.js const dbConnection = require('./db-connection.js') module.exports = function (...args) { return async function (req, res, next) { // somethin' somethin' ... cons
..
基于this question,我还需要对也使用db-connection.js文件的中间件进行测试。中间件文件将如下所示: const dbConnection = require('./db-connection.js') module.exports = function (...args) { return async function (req, res, next) {
..
我在这里的NodeJS中隔离了我面临的问题。依赖函数上的SINON存根不能按预期工作。我没有得到我在这里错过的东西。感谢你的帮助。以下是示例代码。 sinonTest.js "use strict"; function getSecretNumber () { return 44; } function getTheSecret () { return `The secret
..
这是我使用MySQL的代码- import * as mysql from 'mysql'; import {promisify} from 'util'; const connectionParams:any = { /* set as environment variables */ host: host, user: user, passw
..
我有一个具有一些属性的模块。我按如下方式使用 Var propmodule = require('me-props'); var prop = new propmodule('server'); prop.get('min); //returns 3 prop.get('max') //returns 10 为了测试,我不得不对此进行模拟。下面的代码是否使用了proxyquire和sin
..
我尝试在一个对象上使用sinon.spy(),该对象有两个名为Draw的方法(都具有相同的名称,但参数不同),如下所示: const spy = sinon.spy(obj,'draw') 当我尝试使用expect(spy.calledOnceWith(expectedArgument)).toBeTruthy()测试SPY时,其中expectedArgument匹配DRAW的一个函数定
..
我的一个测试中有此存根: sinon.stub(service, 'batchNote') .resolves(mResponse); 测试后能不能把它清理掉?如果是,如何? 推荐答案 是的,有可能。 SinonAPI有restore方法用于stubs。来自docs 调用object.method.restore();(或stub.restore())
..
我有一个用于自动注销功能的Web组件,它显示了第59分钟的消息模式窗口,并在没有活动的情况下再停留一分钟。如果用户没有点击窗口上的任何位置,则注销该用户。因此,一小时内没有任何活动将自动注销用户。该功能工作正常。 现在,为了测试此功能,我尝试使用sinonjs。我使用了FakeTimers,但无法达到效果。我正在尝试测试显示消息的模式窗口。 代码如下: const { When
..
在控制器中,我导入了配置文件,用于获取用户ID的路径和秘密路径位置,并导入了auth文件,用于获取基于我重定向到某个端点的用户ID名称和密码值。但当我编写测试用例时,如何使用存根传递或获取所有细节。你能帮忙吗? Controler.ts import { userConf } from './conf'; import {userSec} from './auth' export
..
我想防止类的构造函数在测试期间被调用,所以我按照文档使用了createStubInstance(MyClass),但构造函数仍然被调用。为什么? 如果要创建MyConstructor的存根对象,但不希望 要调用的构造函数,请使用此实用程序函数。 var存根=sinon.createStubInstance(MyConstructor) 测试 const sinon = re
..
我想知道如何在不从另一个js文件重构的情况下调用下面的函数。 $(document).ready(function() { check(); function check () { setTimeout(function(){ location.reload(true); }, 10000); } }); 我看到这个问题存在一个非常老的问题,
..
您好,我正在使用FETCH测试一个集合,当我调用它时,只有在调用服务器之后才会有来自伪服务器的响应。Response我得到了所需的结果。 为什么? 我的代码 beforeEach( function() { server = sinon.fakeServer.create(); server.autoRespond = true; colhedoraL
..
我正在为async函数编写一个测试,该函数执行一系列任务,并在执行更多任务之前等待60秒。我正在尝试使用sinon.useFakeTimers()跳过这60秒,以便可以在延迟后测试逻辑。 foo.js module.exports.foo = async f => { // ... more code ... await new Promise((resolve, reject
..
当我为SINON间谍或存根指定with Args时,我希望allCount只计算带有这些参数的调用。不过,这似乎并没有发生。 如果我运行以下命令: var mySpy = sinon.spy(); mySpy.withArgs("foo"); mySpy("bar"); expect(mySpy.callCount).to.be(0); 我得到“预期1等于0”。我疯了吗,这是个
..
我在用SINON和Chai编写测试时遇到了问题。 我正在尝试检查是否对间谍调用了函数并获取 ";错误:无效的Chai属性:calledOnce"; 我正在使用相同的测试依赖项在另一个项目中执行相同的操作,没有任何问题。 var udpSocketStub = this.sandbox.spy(udpSocket, 'send'); expect(udpSocket
..
我对mocha sinon单元测试不熟悉。这就是我想要得到的预期结果。但它抛出了以下错误。 AssertionError:应使用参数201调用存根 如果我做错了什么,有人能帮我解决这个问题或提出任何建议吗? async createUser(req: Request, res: Response, next: NextFunction) { const { name, e
..