我目前是自动化测试新手,并使用 selenium-webdriver 使用 nightwatch.js 执行自动化测试,我正在尝试对网站的航类搜索流程执行自动化测试,我目前在执行点击时遇到问题对于特定按钮。
以下是我尝试过的不同单击命令,不幸的是,这些命令不适用于该特定按钮。我尝试使用 ID、Class 以及 Xpath 选择器来定位按钮元素,但它对任何一个都不起作用,并且在执行脚本时,脚本会在该点停止,当传递断言时,它会显示“无法定位特定元素”
'continue booking': function (browser) {
browser
.waitForElementVisible('#booking_un_step_1', 10000)
.click('#booking_un_step_1')
},
这是我尝试的第二种方法,
'continue booking': function (browser) {
browser
.execute(function (selector) {
document.querySelector(selector).click();
}, ['#booking_un_step_1'])
},
还有这个,
'continue booking': function (browser) {
browser
.execute(function(browser){
document.getElementById('#booking_un_step_1').click()
})
},
最后我也尝试了这个,
'continue booking': function (browser) {
browser
.click().keys("t",function(done){
browser
.pause(5000)
.expect.element('#booking_un_step_1').to.have.css('display').which.equals('inline-block');
})
},
这是我想要执行点击的按钮,
<button style="margin-left: 6px;" id="booking_un_step_1" type="button" name="next" class=" opn_booking_module_email_or_login btn-new-ui action-button">Continue Booking</button>
请帮我解决这个问题, 提前致谢!
最佳答案
请尝试使用下面的一个。这对我来说效果很好
.waitForElementVisible('button[name=next]', 1000)
.click('button[name=next]')
关于javascript - 无法使用 selenium webdriver 在 nightwatch.js 中执行按钮单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43246871/