jjzjj

javascript - 用 Jasmine 测试 jQuery Hover

我应该如何使用Jasmine测试jQuery悬停操作?我的jQuery看起来像$('.class').hover(function(){$('#someid').hide();},function(){$('#someid').show();});我如何使用jasmine模拟移动悬停Action并期望“someid”元素被隐藏和显示? 最佳答案 您应该能够直接触发鼠标悬停事件,然后测试适当的行为:it("shoulddosomethingonhover",function(){$('.class').trigger('mouseov

javascript - Protractor :获取警报文本?

我正在使用Protractor测试我的Angular应用程序。我已经看过thedocs并且找不到任何方法来获取警报文本。它本身不是DOM中的一个元素(至少,不是我能弄清楚的;当出现警报时,Chrome的检查器将不允许您检查它)。我将如何测试警报是否包含正确的消息?甚至,那个存在?编辑这是我的代码。HTML:ButtonJS:$scope.ngAlert=function(){window.alert('Hello');};Protractor规范:describe('alert',function(){varptor=protractor.getInstance();beforeEac

javascript - 如何使用 angularJS-karma-jasmine 测试指令的 Controller ?

目标:为waCarousel指令范围变量编写一个通过测试:self.awesomeThings。当self.awsomeThings.length.toBe(3)为真时,期望此测试通过?问题:如何正确编写此测试?而是如何注入(inject)指令Controller?指令:angular.module('carouselApp').directive('waCarousel',function(){return{templateUrl:'../../../views/carousel/wa.carousel.html',controller:function($scope){varsel

javascript - Protractor - 检查输入字段是否有文本

我正在编写一个简单的Protractor测试,旨在检查某个输入标签在单击按钮后是否包含文本。我已经尝试了一些东西,我目前正在尝试使用protractor.ExpectedConditions来检查它是否包含任何文本。这是我的代码:it("shouldclicksubmit",function(){varEC=protractor.ExpectedConditions;varstatus=element(by.id('status'));$("#btnSubmitQuery").click();varcondition=EC.textToBePresentInElement(status

javascript - Jasmine array.length 期望

我是jasminejs测试框架的新手,今天得到了一些奇怪的结果。参见以下代码(search是一个执行api请求并返回promise的函数):it('shouldbeabletosearch',function(){search('string').done(function(result){expect(result.length).toBeGreaterThan(1);//trueconsole.log(result.lenght);//undefined});});问题是,由于一些我必须修复的错误,promise的结果是未定义的,但测试被标记为Success。我发现这是一种误导,如

javascript - Sinon 似乎没有监视事件处理程序回调

我正在使用Jasmin、Simon和jasmin-simon测试主干View。代码如下:varMessageContainerView=Backbone.View.extend({id:'messages',initialize:function(){this.collection.bind('add',this.addMessage,this);},render:function(event){this.collection.each(this.addMessage);returnthis;},addMessage:function(message){console.log('add

javascript - 开始安装 Karma 和 Jasmine - jasmine.Suite() 需要错误

我正在尝试开始使用karma和Jasmine。我已经安装了它们。我相信Karma可以找到我的JavaScript文件。当我运行karmastart时,我的浏览器打开并显示:Karmav0.12.23-connectedIE11.0.0(Windows8.1)isidleFirefox29.0.0(Windows8.1)isidleChrome37.0.2062(Windows8.1)isidle我将一个JavaScript文件添加到我认为Karma正在监视的位置:it('yshouldhavealengthof1',function(){vary='1';expect(y.length

javascript - 尝试/捕捉 Jasmine

我有一个函数试图将参数解析为JSON对象。如果失败,它会改用回退。解析代码.jsfunctionparseCode(code){try{usingJSONFallback(code);}catch(){usingStringFallback(code);}}functionusingJSONFallback(code){JSON.parse(code);//...morecodehere}functionusingStringFallback(code){//...morecodehere}ma​​in.js//Somecode...parseCode('helloworld!');我

javascript - Karma Jasmine 测试总是失败,并在第 9 行显示堆栈跟踪

我有一个奇怪的问题。每当我尝试测试某些东西但测试失败时,它总是显示第9行的堆栈跟踪。我正在使用AngularJS以及Jasmine和Karma。我发现它不依赖于浏览器。错误如下所示:TypeError:'undefined'isnotanobject(evaluating'newgoogle.maps.LatLng')at/Users/user1/project1/test_ctrl.js:9at/Users/user1/project1/spec/test_ctrl_spec.js:170因此,它告诉我测试在第170行失败(这是正确的),但错误原因在我的test_ctrl.js中,行

javascript - 测试手动引导的 Angularjs 应用程序

在一些httpajax请求后在代码中手动引导应用程序时,我在测试angularjs应用程序(karma、jasmine)时遇到问题。angular.module("app",[]);angular.element(document).ready(function(){angular.bootstrap(document,["app"]);});我的jasmine规范中也有以下代码beforeEach(module('app'));当我运行我的规范时,我总是有同样的错误Error:[$injector:modulerr]FailedtoinstantiatemoduleappduetoE