2017-03-02 7 views
0

문제가 있습니다. 고유 한 텍스트가있는 웹 요소를 클릭 할 수 없습니다. 나는이 구조가 : Nightwatch. 텍스트가있는 요소를 클릭하십시오.

<div class="wg-wagon-type__item" data-reactid="10" 
    <div class="wg-wagon-type__title" data-reactid="11">Text</div> 

내가이

.click('.wg-wagon-type__title:contains("Text")') 

시도를하지만

ERROR: Unable to locate element: ".wg-wagon-type__item .wg-wagon-type__title:contain("Text")" using: css selector 

가 어떻게이 요소를 클릭 수정할 수있는 오류가?

+1

제목과 일치하는 것을 사용할 수 있습니다. 또한 귀하의 CSS 선택기가 유효하지 않습니다. : contains ("Text")는 CSS 2 또는 CSS3이 아닌 jQuery입니다. – QualiT

답변

1

당신은 단순히 불행하게도 요소의 텍스트에 일치하는 CSS 선택기가없는 클래스를 wg-wagon-type__title?

.click('.wg-wagon-type__title') 

를 타겟팅 할 수 없습니다 어떤 이유가 있습니까. 그러나 nightwatch에는 'api.execute'를 통해 브라우저에서 javascript를 실행할 수있는 기능이있어 문자열 일치를 수행 할 수 있습니다.

다른 방법으로는 XPath 선택기를 사용하여 철자가 텍스트에게 질문의

.click("//div[contains(@class, 'wg-wagon-type__title') and text()='Text']")