草庐IT

jest-jasmine

全部标签

javascript - 在 jasmin 中使用测试 Angular 复选框

我的情况如下:指令scope:{foo:'='},template:''父Controller$scope.foo=false;Jasmine测试varcb=iElement.find('input');$timeout(function(){//using$timeouttoensure$digest()isn'ttheissue.cb.prop('checked',!cb.prop('checked'))},0);expect(cb.prop('checked')).toBe(true);//passesexpect($scope.foo).toBe(true);//doesn't

javascript - 如何在 Jest 中监视 window.scrollTo?

我得到了一个非常简单的React组件,具有以下功能:componentDidMount(){window.scrollTo(0,0)}看来你不能做类似的事情window.scrollTo=jest.fn()监视scrollTo函数。因此,我想知道监视此函数并断言它已在我的测试中使用过的最佳方法是什么。谢谢 最佳答案 开个Jest,全局namespace必须通过global而不是window访问。global.scrollTo=jest.fn() 关于javascript-如何在Jest中

javascript - 使用 Jasmine 在 Karma 中进行 AngularJS 工厂测试

我正在尝试通过Karma使用Jasmine测试我的AngularJS应用程序。我收到此错误(至少,这是最新的错误):UncaughtTypeError:Cannotreadproperty'$modules'ofnullat/Users/benturner/Dropbox/Code/galapagus/app/static/js/angular-mocks.js:1866来self的karma.conf.js:files:['static/js/jquery.min.js','static/js/angular.min.js','static/js/angular-mocks.js',

javascript - 如何在 Jasmine 中比较两个具有浮点值的对象?

我需要在Jasmine中做一些期望,比如:letrealValue=callSomeMethod();letexpected=[{total:33,saved:1.65}];expect(realValue).toEqual(expected);但是它失败了,消息是:Expect[Object({total:33,saved:1.6500000000000001})]toequal[Object({total:33,saved:1.65})].如何进行正确的检查? 最佳答案 toBeCloseTo匹配器用于精确数学比较:expect

javascript - 使用 bootstrap-vue 运行 jest

我一直在使用vuejs和bootstrap-vue最近。决定为我的项目添加单元测试。我不太熟悉单元测试,所以我正在尝试任何我能找到的东西来理解它是如何工作的。Login.specs.jsimport{shallowMount,mount}from'@vue/test-utils'importLoginfrom'@/components/auth/Login.vue'describe('Login.vue',()=>{it('isaVueinstance',()=>{constwrapper=mount(Login,{mocks:{$t:()=>'Connexion'//i18N}})c

javascript - 在 Rails 中进行 javascript 和 jQuery 测试的 JSpec vs Jasmine vs QUnit

我正在寻找一个与Rails3.0良好集成的javascript单元测试框架谁有使用过上述框架的经验可以分享他们的经验吗?**更新:根据他们的Github存储库,JSpec现已停产:http://github.com/visionmedia/jspec所以这就剩下Jasmine和QUnit 最佳答案 Jasmine与Rails3一起工作得很好,查看如何集成它:http://pivotallabs.com/users/dwfrank/blog/articles/1427-jasmine-in-rails-3

javascript - Angular.js + karma + Jasmine : Unknown provider for service

我正在为以下Angular.js服务编写测试:varmodule=angular.module('wp',['aws','lodash','jquery','moment','wp.model']);/***Wordpressservice.*/module.service('wpService',function(_,$http,$q,$aws,Post){varself=this;/***HTTPrequest.*/this.http=function(config){var$config=_.clone(config);if($config.user&&$config.passw

javascript - Jasmine 测试在 Chrome 和 Firefox 中通过,但在 PhantomJS 中失败

我正在使用React构建一个基本的博客应用程序。我正在使用Jasmine和Karma来运行我的前端测试。我启动并运行了第一个测试,它在Chrome(Chromium)和Firefox中通过了测试,但是当它在PhantomJS中运行时,我收到以下错误:PhantomJS1.9.8(Linux0.0.0)ERRORTypeError:'undefined'isnotafunction(evaluating'ReactElementValidator.createElement.bind(null,type)')at/home/michael/repository/short-stories

javascript - 测试 Jasmine 中自定义事件的处理

我想确保在触发自定义jQuery事件时,对象的方法作为事件处理程序被调用;但是单元测试似乎返回了假阴性,因为我的实现效果很好。(这是使用TwitterFlight和FlightJasmineextensions的测试套件的一部分,但这只是一个普通的Jasminespy。)describe('listeningforuiNeedsPlanevent',function(){varspy;beforeEach(function(){spy=spyOn(this.component,'getPlan');$(document).trigger('uiNeedsPlan');});it('ge

javascript - 使用 Jasmine 在 JavaScript 中插入 WebSocket

我尝试测试onmessage是否是一个正确的函数。这是一个测试:describe(".init(address,window)",function(){beforeEach(function(){address='ws://test.address';window={};e={data:{}}spyOn(window,'WebSocket').and.returnValue(function(){return{onmessage:null}});spyOn(subject,'handleMessage');});it("shouldcreateaWebSocketclientwhich