2017-04-06 96 views
1

我目前還不熟悉自動化測試和使用selenium-webdriver執行與nightwatch.js的自動化測試,我正試圖在飛行搜索流程中執行自動測試一個網站,我目前無法執行點擊某個特定的按鈕。無法在nightwatch.js中使用硒webdriver執行按鈕點擊

以下是我嘗試過的不同點擊命令,不幸的是沒有爲特定按鈕工作。我試圖使用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(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> 

請幫我出這個問題, 提前感謝!

+0

請這個選擇嘗試'按鈕[ID =「booking_un_step_1」] [NAME =「下一步」]' –

+0

嗨,@BaoTran感謝你可惜沒有奏效對於我來說,當我嘗試像這樣[鏈接](https://jsfiddle.net/nu000e6q/)它給了我一個「參考錯誤」:按鈕沒有定義 ,當以這種方式嘗試[鏈接](https:/ /jsfiddle.net/sqo4aqfq/)未執行點擊。 –

+0

請執行此操作並將結果返回給我瀏覽器 .waitForElementVisible('button [id =「booking_un_step_1」]',10000) .click('button [id =「booking_un_step_1」]') –

回答

1

請嘗試使用下面的一個。這工作很適合我

.waitForElementVisible('button[name=next]', 1000) 
.click('button[name=next]')