2017-04-06 1 views
1

Ich bin derzeit neu zu automatisieren Tests und Durchführung von Automatisierungstests mit nightwatch.js selen-webdriver, versuche ich, Automatisierungstests auf einem Flug Suchfluss für durchzuführen Eine Website. Ich habe momentan Probleme, den Klick für eine bestimmte Schaltfläche auszuführen.Kann nicht klicken in Nightwatch.js mit Selen-Webdriver

Im Folgenden sind die verschiedenen Klickbefehle, die ich ausprobiert habe, die leider nicht für diese bestimmte Schaltfläche funktioniert haben. Ich habe versucht, das Button-Element mit ID-, Klassen- und Xpath-Selektoren zu finden, aber es funktionierte für keines davon, und wenn das Skript ausgeführt wird, stoppt das Skript an diesem Punkt und wenn Assertions übergeben wurden, heißt es "The spezifisches Element nicht gefunden werden kann“

'continue booking': function (browser) { 
    browser 
     .waitForElementVisible('#booking_un_step_1', 10000) 
     .click('#booking_un_step_1') 
     }, 

Dies ist die zweite Art und Weise, dass ich versuchte,

'continue booking': function (browser) { 
    browser 
     .execute(function (selector) { 
     document.querySelector(selector).click(); 
     }, ['#booking_un_step_1']) 
     }, 

und dies auch,

'continue booking': function (browser) { 
    browser 

     .execute(function(browser){ 
     document.getElementById('#booking_un_step_1').click() 
     }) 
     }, 

und schließlich habe ich versucht, dies als gut,

'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'); 

     }) 
    }, 

und das ist die Taste, die ich auf den Klick ausführen möchten,

<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> 

Bitte helfen Sie mir mit diesem Thema aus, Vielen Dank im Voraus!

+0

Bitte versuchen Sie es mit diesem Selektor 'Taste [id =„booking_un_step_1“] [name =„next“]' –

+0

Hallo, @BaoTran danke dafür aber leider, die nicht funktionierten für mich, als ich es so versuchte [Link] (https://jsfiddle.net/nu000e6q/) gab es mir einen "Reference Error": Button nicht definiert und wenn auf diese Weise versucht [Link] (https://jsfiddle.net/sqo4aqfq/) Der Klick wurde nicht durchgeführt. –

+0

Bitte führen Sie dies und das Rück mir den result' Browser .waitForElementVisible ('Taste [id = "booking_un_step_1"]', 10000) .click ('Taste [id = "booking_un_step_1"]') ' –

Antwort

1

Bitte versuchen Sie den folgenden zu verwenden. Das hat gut für mich gearbeitet

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