sinon相关内容
有没有一种方法可以使用Jest API存根函数? 我习惯于使用sinon存根,在这里我可以用存根编写单元测试,以测试从我的测试单元中出来的任何函数- http://sinonjs.org/releases/v1.17.7/stubs/ 例如- sinon.stub(jQuery, "ajax").yieldsTo("success", [1, 2, 3]); 解决方案 对于jest,
..
在模拟Node依赖项时,我遇到了以下库: Proxyquire 重新布线 SandboxedModule Sinon 它们似乎或多或少都在做同一件事:允许您模拟require()调用(Sinn除外,它几乎模拟了所有内容).他们似乎都需要进行一些相当复杂的设置,注意传递给require的字符串的确切语法-在重构过程中效果不佳. 每个库的优缺点是什么?我什么时候可以选择一个?每
..
我正在将Node.js与felixge的 node-mysql 客户端一起使用.我没有使用ORM. 我正在用Vows进行测试,并希望能够模拟我的数据库(可能使用Sinon).由于我本身并没有DAL(除了node-mysql之外),因此我不确定如何执行此操作.我的模型大多是带有很多吸气剂的简单CRUD. 关于如何实现此目标的任何想法? 解决方案 使用sinon,您可以在整个模块周
..
我想使用Sinon存根使用回调来解决诺言的函数: const callback = (err, data) => { if (err) { reject(err); } else { resolve(data); } }); stub.me({}, callback); 我尝试过: var stub =
..
tl; dr 我需要测试是否成功加载Google电子表格后,我的方法向电子表格中添加了一行. saveDataToGoogleSpreadSheet(conversationData){ return new Promise((resolve, reject) => { Spreadsheet.load(this.getGoogleAPISettings(), (err, spr
..
背景 我做了一个小功能,可以通过套接字发出消息,我正在尝试使用mocha和sinon对其进行测试: const myFun = socket => { socket.emit("first", "hello World!"); //some random amount of time passes socket.emit("second", "hello M
..
我是TDD的新手,正在用angular js测试authInterceptor(我可以使用chai/mocha/sinon),它具有两个功能,一个请求和一个ResponseError.我已经成功测试了request函数,但是我不知道如何(搜索文档)模拟401(未经授权)错误.这是拦截器: export default function AuthInterceptor($q, $inject
..
我正在尝试编写一个单元/集成测试,我想在其中获取数据库中所有内容的列表.因为这不仅是一个GET,而且这些测试需要扩展到POST,PUT&删除. 到目前为止,我所拥有的代码运行良好,实际上我可以从数据库中获取数据,但是一旦我尝试终止负责对数据库进行调用的功能,Mocha就会超时 1个失败 1)/account_types GET 200列表: 错误:超过2000ms的超时时间.确保
..
我想使用sinon存根来异步测试事件发射器. 我希望存根在调用后调用回调. 我以为stub.yields是我想要的,但不是.有没有一种整齐的方法可以做到这一点? it('asynchronously emits finish after logging is complete', function(done){ const EE = require('event
..
我正在尝试stub一个module.exports函数.但是我有些麻烦.我会给你一个sudo代码. MyController.js const sendOTPOnPhone = rewire('../../src/services/OtpService/sendOTPOnPhone') module.exports = async function(req, res) {
..
根据有问题的建议在此处输入链接描述我现在模拟了readFileSync并模拟了外部函数,我想验证变量值是否设置为预期值 file.js const fs1 = require('fs'); let param; module.export = { test, param } function test (ou
..
我有一个内部依赖于Facebook图形对象的请求,该对象对FB graph API执行另一个请求. 我想知道是否可以使用sinon模拟图形对象,以便它实际上不会在测试中执行请求,而是使用我在测试中提供的值执行回调函数. /p> server.post("/facebookLogin", function(req, res) { graph.setAccessToken(req.bo
..
我正在尝试为此简单的中间件功能编写独立测试 function onlyInternal (req, res, next) { if (!ReqHelpers.isInternal(req)) { return res.status(HttpStatus.FORBIDDEN).send() } next() } // Expose the middleware funct
..
我希望能够在每次测试的基础上存根我的中间件功能. 在此明确指出,问题在于我不能仅存根中间件功能,因为节点已缓存了中间件功能,因此自从我一开始就创建我的应用程序以来,我就无法进行任何操作. const request = require("supertest"); const { expect } = require("chai"); const sinon = require('sinon'
..
我有一种方法来设置令牌的到期日期: var jwt = require('jwt-simple'); module.exports = { setExpirationDate: function(numDays) { var dateObj = new Date(); console.log(dateObj); } } 我想在“新日期"
..
我正在使用express在node.js中编写应用程序. 我将路线定义与express分开了,因此我可以对它进行单元测试而不会嘲笑express. 我所做的是: 文件:usersRoutes.js var routes = { getAll: function(req,res) { var db = req.db; // req.db is initialized t
..
假设我们要测试使用Sinon的另一个函数调用了特定函数. fancyModule.js export const fancyFunc = () => { console.log('fancyFunc') } export default const fancyDefault = () => { console.log('fancyDefault') fancyFunc()
..
我有一个使用node_redis库创建的Redis客户端( https://github.com/NodeRedis/node_redis ): var client = require('redis').createClient(6379, 'localhost'); 我有一个要测试的方法,该方法的目的是设置值并将其发布到Redis,因此我想测试以确保根据我的期望调用或不调用set和p
..
我想编写一个测试,检查我的函数是否使用await关键字调用其他函数. 我希望测试失败: async methodA() { this.methodB(); return true; }, 我希望测试成功: async methodA() { await this.methodB(); return true; }, 我也希望测试也成功: m
..
目前,伊斯坦布尔只为测试中使用的文件生成覆盖率,这是可以的,但似乎无法达到覆盖率的目的. 我没有Istanbul配置,正在使用以下脚本字符串通过npm test调用它: $ istanbul cover _mocha -- -R dot --check-leaks --recursive test/ 有没有一种方法可以覆盖我所有的源代码? 解决方案 找到了答案,我认为我很
..