Capybara找不到按xpath或文字点击的按钮,按钮没有id或名称

时间:2017-07-12 14:50:29

标签: ruby selenium capybara

我正在测试这个页面,我必须填写一个表单,并且只有当所有字段都填满并且有效时,按钮才能启用,但是,当试图找到要点击的按钮时,我总是得到capybara的消息无法找到按钮或元素,但我试图找到它。 该按钮没有名称或ID,这使得它更难。

screenshot of the part of the code while inspecting element

<button class="btn btn--highlight _159vaYHuibqRdI3OZTALCW">
<!-- react-text: 182 -->
Jetzt kaufen
<!-- /react-text -->
<!-- react-text: 183 --> — <!-- /react-text -->
<!-- react-text: 184 -->
94,01&nbsp;€
<!-- /react-text -->
<span class="spinner">
</span></button>

当浏览器的大小发生变化时,按钮文本会发生变化,但默认情况下,按钮的文本大小为&#34; Jetzt bestellen&#34;当更大的时候&#34; Jetzt kaufen&#34; 我已经尝试点击此按钮的方式:

@browser .click_button(&#39; Jetzt bestellen&#39;等待:10)

@browser .within&#34; .btn btn - 突出显示&#34;做     @ browser.click_on&#34; Jetzt bestellen&#34;   端

@browser .find_button(&#39; Jetzt bestellen&#39;等待:10).click

@browser .find(:xpath,&#39; //按钮[text()=&#34; Jetzt bestellen&#34;]&#39;等待:10)。点击

1 个答案:

答案 0 :(得分:0)

这是我在测试Angular应用程序时解决此问题的方法。

@browser.find('button', text: 'Jetzt bestellen').click

如果链接和按钮上没有hrefs,一些水豚探测器就不会像他们有href一样工作。