sinon相关内容
我正在努力提高对我的 JavaScript 进行单元测试的能力.我有以下代码: var categoryVal = $('#category').val();if (categoryVal === '') {做一点事();} 我的测试运行器在页面上没有 #category 输入,那么我将如何在此处存根/模拟 jQuery 选择器?我看过 jasmin 和 sinon 文档,但无法弄清楚如何让它
..
我有一个具有以下功能的数据服务 函数 getInsureds(searchCriteria) {var deferred = $q.defer();被保险人Search.get(searchCriteria,功能(被保险人){deferred.resolve(被保险人);},功能(响应){deferred.reject(响应);});返回 deferred.promise;} 我想测试以下功能
..
我有一个相当简单的函数,它返回一个 jQuery .ajax() 承诺: CLAW.controls.validateLocation = function(val, $inputEl) {返回 $.ajax({url: locationServiceUrl + 'ValidateLocation/',数据: {'位置名称': val},发送前:函数(){$inputEl.addClass('忙
..
假设我有一个函数 Func a() {//做一点事让 c = b();返回 c;} 我想测试函数 a 和模拟 b() 并在模拟中分配 c.Sinon.Stub(Test,"b").returns("DummyValue");c 应该被分配 DummyValue. 我该怎么做? describe("a", () => {让 a = a();//模拟 b();动作=执行(一);期望(动作)
..
我想对以下 ES6 类进行单元测试: //service.jsconst InternalService = require('internal-service');类服务{构造函数(参数){this.internalService = new InternalService(args);}获取数据(参数){让事件 = this.internalService.getEvents(args);让
..
我正在使用 Node.js 和 felixge 的 node-mysql 客户端.我没有使用 ORM. 我正在使用 Vows 进行测试,并希望能够模拟我的数据库,可能使用 Sinon.由于我本身并没有真正的 DAL(除了 node-mysql),我不确定如何去做.我的模型大多是带有很多吸气剂的简单 CRUD. 关于如何实现这一点的任何想法? 解决方案 使用 sinon,您可以在
..
有没有办法使用 jest API 存根函数?我习惯于使用 sinon 存根,在那里我可以用存根为来自我测试单元的任何函数调用编写单元测试 -http://sinonjs.org/releases/v1.17.7/stubs/> 例如- sinon.stub(jQuery, "ajax").yieldsTo("success", [1, 2, 3]); 解决方案 使用 jest 你应该使用
..
在诗浓我可以做到以下几点: var myObj = {道具:'富'};sinon.stub(myObj, 'prop').get(function getterFn() {返回“酒吧";});myObj.prop;//'酒吧' 但是我怎么能用 Jest 做同样的事情呢?我不能只用 jest.fn() 之类的东西覆盖函数,因为它不会替换 getter “无法设置get的值" 解决方案
..
我是 node.js 的新手.我正在 node.js 中为 postgresql 编写代码,使用 pg 和 pg-native 为无服务器应用程序编写代码.我需要为它编写单元测试.我无法使用 jest 或 sinon 模拟 pg 客户端. 我的实际代码是这样的 const { Client } = require('pg');export const getAlerts = async (
..
用于完整 DOM 渲染的 Enzyme 文档此处 包含以下间谍示例关于使用 Sinon 的生命周期方法: describe('', () => {it('调用 componentDidMount', () => {sinon.spy(Foo.prototype, 'componentDidMount');const wrapper = mount();期望(Foo.prototype.compo
..
我试图理解 sinon 库的 fake、spy、stub 和 mock 之间的区别,但无法清楚地理解它. 谁能帮我了解一下? 解决方案 仅供了解目的调用: FuncInfoCollector = 是一个函数,它记录所有调用的参数、返回值、this(context) 的值和抛出的异常(如果有).(这个 FuncInfoCollector 是我给的虚名,SINON lib 中没有)
..
在我的代码中,我在 window.confirm 提示点击“OK"时触发回调,我想测试回调是否被触发. 在sinon中,我可以通过以下方式存根window.confirm函数: const confirmStub = sinon.stub(window, 'confirm');确认存根.返回(真); 有没有办法在 Jest 中实现这种存根? 解决方案 开玩笑的,你可以使用 glo
..
在以下单元测试代码中: TestModel = Backbone.Model.extend({默认值:{“选择":空},初始化:函数(){this.on('change:selection', this.doSomething);},做某事:函数(){console.log("有些事情已经完成了.");}});模块(“测试",{设置:函数(){this.testModel = new TestM
..
我正在尝试使用backbone.js、jasmine.js 和sinon.js 测试按钮点击.但是下面的测试用例失败了.我正在使用间谍来跟踪它是否被调用.你能帮我解决这个问题吗? 谢谢. 新建任务模板
..
所以,这是我遇到的一个非常有趣的问题. 我目前正在构建一个backbone.js - Rails 应用程序.通常只是为了学习目的而构建它.我(就像任何优秀的 Rails 开发人员一样)在 TDD/BDD 方面尽我所能,但我在使用水豚时遇到了问题. 我有一个只测试 root_path 工作的集成规范(主干历史开始,显示初始信息等......). 需要'spec_helper'描述“Re
..
我在 node.js 中工作.我的应用程序通过 node_redis 模块与 Redis 交互.我正在使用 mocha 和 sinon 来自动测试我的应用程序.我的应用看起来像这样: ...snipvar redisClient = redis.createClient(redisPort, redisHost);var someValue = redisClient.get("someKey"
..
我有一个包含像 this.$route.fullPath 这样的语句的组件,我应该如何模拟 $route 对象的 fullPath 的值如果我想测试那个组件? 解决方案 最好不要模拟 vue-router 而是使用它来渲染组件,这样你就可以得到一个正常工作的路由器.示例: 从 'vue' 导入 Vue从 'vue-router' 导入 VueRouter从 'src/components
..
我有一个需要 jquery 的 ES6 模块. import $ from 'jquery';出口类天气{/*** 天气类的构造函数** @param 纬度* @param 经度*/构造函数(纬度,经度){this.latitude = 纬度;this.longitude = 经度;}/*** 使用 API 获取天气*/获取天气(){返回 $.ajax({url: 'http://localho
..
我正在尝试对文件中的函数进行单元测试,同时存根同一文件中的另一个函数,但没有应用模拟,而是调用了真正的方法.举个例子: //文件:'foo.js'导出函数 a() {//.....}导出函数 b() {让东西 = a();//调用一个//...做东西} 还有我的测试: import * as actions from 'foo';const aStub = sinon.stub(action
..
我正在尝试存根此对象中使用的 mongoose 依赖项: var Page = function(db) {var 猫鼬 = db ||要求('猫鼬');if(!this instanceof Page) {返回新页面(db);}功能保存(参数){var PageSchema = mongoose.model('Page');var pageModel = new PageSchema({...
..