草庐IT

Protractor

全部标签

javascript - 如何在 ProtractorJS 中扩展 ElementFinder 对象?

在使用protractorJS进行的一些实验中,我注意到没有简单的方法可以从Protractor扩展(继承)ElementFinder对象以添加自己的函数。例如,我想创建对象Checkbox,它会有额外的方法-check()-应该根据isSelected()的结果切换复选框。我想出了代码-varElementFinder=require('protractor/lib/element.js').ElementFinder;varElementArrayFinder=require('protractor/lib/element.js').ElementArrayFinder;class

javascript - Protractor E2E测试错误: Object [object Object] has no method 'getWindowHandle'

我正在尝试检查点击按钮打开facebook登录的弹出窗口。Error:Object[objectObject]hasnomethod'getWindowHandle'.代码片段生成错误:describe('Tests',function(){varptor;varhandlePromise;varutil=require('util');beforeEach(function(){ptor=protractor.getInstance();handlePromise=ptor.getAllWindowHandles();varhandlesDone=false;ptor.get('/S

javascript - 链接 Protractor 中的所有语句

我的第一个堆栈溢出问题....我试图在Protractor中链接所有语句,但出现错误。TypeError:Object[objectObject]hasnomethod'all'我正在查看下一页上的API代码http://angular.github.io/protractor/#/api?view=ElementArrayFinder.prototype.all表示可以使用element.all(locator).all(locator)以这个为例varfoo=element.all(by.css('.parent')).all(by.css('.foo'))我的代码似乎非常相似,我

javascript - 测试选项卡导航顺序

在我们的一项测试中,我们需要确保以正确的顺序执行表单内的选项卡键盘导航。问题:传统的用Protractor检查tab导航顺序的方法是什么?目前我们正在通过对表单中存在的尽可能多的输入字段重复以下步骤来解决此问题(代码如下):检查当前聚焦元素的ID(使用getId())将TAB键发送到当前获得焦点的元素这是规范示例:it("shouldnavigatewithtabcorrectly",function(){varregCodePage=newRegCodePage();browser.wait(protractor.ExpectedConditions.visibilityOf(reg

javascript - Protractor 如何点击空白处

我们正在使用Protractor来测试AngularJS项目。有一个页面我需要点击一个空白处(任何空白处)以在填写所有必填字段后触发自动保存。但是我不知道怎么办。我试图找到无用的图像或单击文本框。它无法工作。堆栈跟踪:UnknownError:unknownerror:Elementisnotclickableatpoint(975,357).Otherelementwouldreceivetheclick:...*任何意见都会有所帮助,非常感谢。 最佳答案 一个选择是找到一个特定的元素并点击偏移量:varelm=element(b

javascript - Protractor 测试元素是否为空

我想测试这个div元素为空。varmessagesDiv=element(by.id('messagesDiv'));expect(messagesDiv).to...我将如何实现? 最佳答案 我认为:expect(messagesDiv.getText()).toBe('');应该可以解决问题。更多信息here. 关于javascript-Protractor测试元素是否为空,我们在StackOverflow上找到一个类似的问题: https://stack

javascript - 在数组javascript的排序功能中实现异步/等待

我正在尝试在ProtractorElementArrayFinder上实现排序方法。众所周知,所有Protractor方法都返回promise。所以我的排序方法有一个条件取决于promise的解决。我正在为async/await使用节点插件,以使其与低于6的node.js版本兼容。(这里是插件:https://www.npmjs.com/package/asyncawait)这是我的代码,其中this是ArrayElementFinder:varasyncCompare=async(function(a,b){letx=await(a.getText());lety=await(b.g

javascript - Angular JS 如何使用 Protractor 获取中继器的所有行?

我有一个包含所有用户的表,我想搜索列为{{user.name}}==='X'的用户。当我找到正确的行时,我想通过单击该行的最后一列来删除该条目。element(by.repeater('userinallUsers')).then(function(rows){for(vari=0;i我得到一个TypeError:Object#hasnomethod'then'我在这里找到了我的解决方案,但那仍然是旧语法 最佳答案 您忘记调用all函数:element.all(by.repeater('userinallUsers')).then(

javascript - 使用 Protractor 获取按钮上的禁用属性不起作用

我试图在一个按钮上获取禁用属性,它应该被“禁用”,但我似乎没有得到值。Angular和Protractor的新手!当我检查页面时,这是我得到的显示已禁用按钮的HTML,就像它在页面上一样:Save下面的Protractor测试返回'Expectednulltoequaldisabled'varbtnSave=element(by.css('.primary'));expect(btnSave.isPresent()).toBeTruthy();varattr=element(by.css('.primary')).getAttribute('disabled');expect(attr

javascript - 使用带有 Protractor 的 Firefox 35 导致错误

使用chrome运行我的Angular应用程序场景场景运行成功,但在firefox新版本35.0b6时发生停止。任何人都请帮助我提前谢谢。我使用的是Protractor1.4.0。我的场景:describe('99ccse2etesting',function(){it('checkithaveatitle99CCS',function(){browser.get('http://99ccs.com/ccsnew/#/login');//itchecksthe"http://99ccs.com/ccsnew/"pagecontainsatitle"99CCS"expect(browse