草庐IT

protractor-jasmine

全部标签

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 - 如何在 Protractor 测试中使用 browser.getCurrentUrl()?

我今天一直在为这几行Protractor代码苦苦挣扎:element(by.linkText("People")).click();browser.waitForAngular();varurl=browser.getCurrentUrl();...看起来getCurrentUrl放在waitForAngular()语句之后总是失败。错误输出太模糊:UnknownError:javascripterror:documentunloadedwhilewaitingforresult那么,单击超链接并检查新url的正确方法是什么?这是我的测试:如果我在点击链接之前getCurrentUrl

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 - Protractor 滚动到 View 中不起作用

我刚开始使用Protractor,想直观地看到我的网页向下滚动到一个元素,但它不起作用。我知道滚动到允许我直观地看到滚动发生的窗口。滚动到我的理解dosent所有这些。任何帮助将不胜感激HTML代码aclass="buttonbutton--secondarypromo--app-button"href="https://itunes.apple.com/us/app/homes.com-real-estate-search/id306423353?mt=8&uo=4"target="_blank"data-tl-object="app_referral_hdc_portalhomef

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 - 开始安装 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中,行