selenium - 如何使用NAME和VALUE定位复选框

时间:2015-07-24 18:51:20

标签: css selenium css-selectors selenium-ide

我有以下HTML:

<div class="small-4 columns text-right">
    <input type="radio" value="false" name="auto_policy[autos_attributes][0][parked_at_mailing_address]" autocomplete="smartystreets"></input>
    <div class="radio_button_label"></div>
    <input type="radio" value="true" name="auto_policy[autos_attributes][0][parked_at_mailing_address]" checked="checked" autocomplete="smartystreets" style="background-color: rgb(255, 255, 255);"></input>
    <div class="radio_button_label"></div>
</div>

我如何定位&#39; false&#39;选项,因为它们具有相同的名称?

我试过

css=a[name='auto_policy[add_violation]' value='false']

css=a[name='auto_policy[add_violation]', value='false']

但是找不到&#39;

一个有用的选项是使用

//input[@name='auto_policy[add_violation]'][2] 

然而,我想避免看似脆弱的[2],并且能够使用值=&#39; false&#39;代替

1 个答案:

答案 0 :(得分:0)

我会使用以下CSS选择器(而不是如何组合多个条件):

css=input[name*=add_violation][value=false]

*=表示“包含”。

或者,XPath表达式:

xpath=//input[contains(@name, "add_violation") and @value="false"]