如何在selenium Java中检查3个复选框

时间:2018-05-24 06:22:37

标签: selenium checkbox

我有3个复选框, ID id1id2id3名称name1name2name3

<table id="ContentPlaceHolder1_cblType">
  <tbody>
    <tr>
      <td>
        <input id="ContentPlaceHolder1_cblType_0" type="checkbox"
               name="ctl00$ContentPlaceHolder1$cblType$0" value="Clinician">
        <label for="ContentPlaceHolder1_cblType_0">Clinician</label>
      </td>
      <td>
        <input id="ContentPlaceHolder1_cblType_1" type="checkbox" 
               name="ctl00$ContentPlaceHolder1$cblType$1" value="Administration">
        <label for="ContentPlaceHolder1_cblType_1">Administration</label>
      </td>
      <td>
       <input id="ContentPlaceHolder1_cblType_2" type="checkbox" 
              name="ctl00$ContentPlaceHolder1$cblType$2" value="Therapist">
       <label for="ContentPlaceHolder1_cblType_2">Therapist</label>
      </td>
    </tr>
  </tbody>
</table>

我需要检查从excel检索的值。

data.getEmpType().get(rowCnt)

使用上面的代码我将从excel获取值。 怎么做?

1 个答案:

答案 0 :(得分:0)

String ExcelValue= "data from excel";

**/*Create a list using common attributes of all three check boxes */**

List< WebElement> CB=driver.findElements(By.xpath("\\input[starts-with(@id,'ContentPlaceHolder1') AND @type='checkbox']"));   

**/*Store size of List created in CB_size(as per your data is should be three */**

int CB_size=CB.size(); 

**/*below loop will execute for all three check boxes one by one and with which so ever your value from excel matches, it click and come out of the loop */**

for (int i = 0; i < CB_size; i++) 

{ 

if(CB.get(i).getAttribute("value").equals(ExcelValue))

{ 

CB.get(i).click(); 

break;

} 

}