2017-02-22 99 views
0

У меня есть DOM так:Не можете найти способ нажать() этот элемент (WD, nodejs)

<form id="frmResendPassword" role="form" method="post"> 
    <div class="form-group">...</div> 
    <span class="pull-right"> 
    <button type="submit" class="btn btn-sm btn-default"> 
    Resend Password</button> 
    </span> 
</form> 

Я хочу, чтобы нажать на кнопку «Повторная отправка пароля».

Я пробовал много различных селекторов, таких как:

elementByClassName("btn-default") 
elementById("frmResendPassword") 
elementByName("Resend Password") 
elementByCss(thecsspath) 

т.д .... ни один из них не выполняют tap() ... однако они не бросайте элемент не найдена ошибка .... так что я запутался. может кто-нибудь, пожалуйста, помогите

обновление: Вот основной код автоматизации ... его очень простой

it("should send text to phone", function(){ 
    sleep.sleep(5) 
    return browser 
    .elementByName("mobileNo") 
    .sendKeys(usrnme) 
    .elementByCss("#frmResendPassword button[type=submit]") 
    .tap() 
}) 

типа It мобильный номер в порядке, однако, кажется, просто игнорировать нажатие кнопки.

+0

Какой код вы используете для вызова 'кран()'? А что такое 'thecsspath'? Ваши другие селекторы захватывают неправильный элемент, за исключением 'elementByClassName (« btn-default »)', но это также, вероятно, захватывает другую кнопку. – mrfreester

ответ

1

Моя догадка заключается в том, что селектор является проблемой. Попробуйте это:

elementByCss("button[type=submit]") 

или, если это не однозначно идентифицировать его, может быть, это:

elementByCss("#frmResendPassword button[type=submit]") 

В английском языке, что означает button с type значением submit, который имеет предка в form, где id (#) является frmResendPassword

+0

оба не работали, никаких других идей? im серьезно застрял на этой простой задаче –

+0

также я обновил, чтобы включить фрагмент кода –

+0

Хорошо, я изменил .tap() на .click(), и он сработал –

1

Это, как я ее решил, благодаря mrfreester

it("should send text to phone", function(){ 
sleep.sleep(5) 
return browser 
.elementByName("mobileNo") 
.sendKeys(usrnme) 
.elementByCss("#frmResendPassword button[type=submit]") 
.click() 

})