【发布时间】:2016-04-03 14:31:24
【问题描述】:
我开始学习 ruby (rspec , rubymine)。 我想做简单的点击操作,但我有问题。 id 和 name 不存在所以,我应该使用 xpath 或 css。
我试过#click on contact link:
driver.find_element(:css, 'html>body>footer>div>div>section:nth-child(3)>a:nth-child(1)').click + ' :: absolute path'
xpath 向我展示了:
/x:html/x:body/x:footer/x:div/x:div/x:section[3]/x:a[1]
链接是:
<a href="/k/k.aspx?action=custserv&topic=contact" title="Contakt ">Contact</a>
这是第一个链接:
section class="link-block link-collection col-xs-12 col-sm-4 col-md-2"
并且section类放在div: class="row"
这里是:<footer class="footer" role="info">
这是在里面:<body data-touch="false" class="abc">
谁能帮帮我?
【问题讨论】:
-
问题出在哪里?
-
您可以通过此处的链接文本内容,这样可以为将来的更改节省更多。
-
在此处链接文本内容,那么在哪里以及如何?:) 我认为没有复制某些内容:联系
-
适用于:driver.find_element(:xpath, '//*[@title="Contact"]').click 但是当标题改变时它将不起作用..
-
这是规范吗?然后是的 - 当文本更改时......规范应该失败,然后您将规范更改为新文本。对于 capybara 规范,您应该测试用户实际看到的内容 - 即点击实际显示给用户的内容......而不是 CSS 类。