Node.js 无法使用量角器从下拉菜单E2E测试中选择元素
有很多方法可以做到这一点,我已经尝试了很多方法,但在进行自动测试时,我无法从下拉菜单中选择项目 选择是出现在下拉菜单中的默认选项,我希望自动测试选择其中一个元素,不管是哪一个 这是HTML代码 选择 五万 10万 25万 500KNode.js 无法使用量角器从下拉菜单E2E测试中选择元素,node.js,jasmine,protractor,angularjs-e2e,e2e-testing,Node.js,Jasmine,Protractor,Angularjs E2e,E2e Testing,有很多方法可以做到这一点,我已经尝试了很多方法,但在进行自动测试时,我无法从下拉菜单中选择项目 选择是出现在下拉菜单中的默认选项,我希望自动测试选择其中一个元素,不管是哪一个 这是HTML代码 选择 五万 10万 25万 500K 你肯定是个怪人。如果可能的话,我通常只需单击文本选项。你应该能做这样的事 var selectOptionByText = function(text) { return element(by.cssContainingText('option', text
你肯定是个怪人。如果可能的话,我通常只需单击文本选项。你应该能做这样的事
var selectOptionByText = function(text) {
return element(by.cssContainingText('option', text)).click();
};
单击//选择[@ng model='user.investmentAmount']usng xpath后,
放置一些类似browser.sleep2000的等待,然后使用//选项[text='100K']单击。这是因为您只选择了一个包含'Select'值和预期数组的选项 尝试下面的方法,首先按型号获取选择框,然后按型号获取所有选项 数组中的html标记名
感谢您的回复,我最终在同一页上找到了一个不同的下拉菜单,使用:elementby.model'user.sourceOfFunds'.sendKeys'Savings';上面这行代码对我来说很好,但是当我尝试elementby.model'user.investmentAmount'.sendKeys'50-100'时;或者elementby.model'user.investmentAmount'.sendKeys'100k';我发现元素不可见。不知道为什么一个有效,另一个无效谢谢你的回复,我最终在同一页上找到了一个不同的下拉菜单,使用:elementby.model'user.sourceOfFunds.sendKeys'Savings';上面这行代码对我来说很好,但是当我尝试elementby.model'user.investmentAmount'.sendKeys'50-100'时;或者elementby.model'user.investmentAmount'.sendKeys'100k';我发现元素不可见。不知道为什么一个有效,另一个无效谢谢你的回复,我最终在同一页上找到了一个不同的下拉菜单,使用:elementby.model'user.sourceOfFunds.sendKeys'Savings';上面这一行对我来说很好,但是当我尝试elementby.model'user.investmentAmount'.sendKeys'50-100'; 或者elementby.model'user.investmentAmount'.sendKeys'100k';我发现元素不可见。不确定为什么一个有效,而另一个无效如果你有与之无关的问题,最好打开另一个问题…但是对于这个问题,要么解决它,要么关闭…这样将来其他人可以从中受益,,,
browser.element(by.model('user.investmentAmount')).all(by.tagName('option')).
then(function(items){
items[2].click();
});