我有两个搜索字段,我想找到第二个设置一些文字。
我尝试过使用div,但总能找到第一个搜索字段。 有没有人建议如何找到第二个对象或使用唯一的占位符文本“搜索...”?
HTML:
input type="text" name="searchString" id="searchString" projects="" for="" placeholder="Search" class="form-control"
input type="text" name="searchString" id="searchString" placeholder="Search..." class="form-control"
Ruby - Watir:
@b.link(:text => "http://ml-test.mytest.com/Client/Profile/ab295b41-2c5e-4100-bdee-e757405238bb").click
@b.text_field{div(:class => "col-sm-4 col-md-3", :placeholder => "Search...")}.set "Automation (Test)"
答案 0 :(得分:2)
看起来问题可能只是代码中的拼写错误。请注意:
@b.text_field{div(:class => "col-sm-4 col-md-3", :placeholder => "Search...")}.set "Automation (Test)"
{}
看到的某个块正在传递给text_field
方法。 text_field
方法对块没有任何作用,因此代码实际上就是这样做:
@b.text_field.set "Automation (Test)"
由于没有向文本字段提供定位器,它将在页面上输入第一个文本字段。
要根据占位符属性(或任何其他定位器)找到文本字段,需要将其作为参数而不是块传递:
@b.text_field(:placeholder => "Search...").set "Automation (Test)"
你也包括了一个div。假设它是一个需要找到文本字段的祖先元素,它应该是:
@b.div(:class => "col-sm-4 col-md-3").text_field(:placeholder => "Search...").set "Automation (Test)"