如何查找复选框总数 - Selenium WebDriver

时间:2012-09-17 22:39:38

标签: selenium webdriver selenium-webdriver

有没有办法计算复选框的总数?

这是按页面生成的html源代码..

<tr> 
  <td>
    <span style="padding-left:15px;">
    <input id="ctl00_ContentPlaceHolder1_Control1_stCat_8" type="checkbox" name="ctl00$ContentPlaceHolder1$AddControl1$cat$lstCat$8"/>
    <label for="ctl00_ContentPlaceHolder1_AddControl1_lstCat_8">Item 1</label>
    </span>
 </td>
</tr>

<tr> 
  <td>
    <span style="padding-left:15px;">
    <input id="ctl00_ContentPlaceHolder1_Control1_stCat_9" type="checkbox" name="ctl00$ContentPlaceHolder1$AddControl1$cat$lstCat$8"/>
    <label for="ctl00_ContentPlaceHolder1_AddControl1_lstCat_9">Item 2</label>
    </span>
  </td>
</tr>

<tr> 
  <td>
    <span style="padding-left:15px;">
    <input id="ctl00_ContentPlaceHolder1_Control1_stCat_10" type="checkbox" name="ctl00$ContentPlaceHolder1$AddControl1$cat$lstCat$8"/>
    <label for="ctl00_ContentPlaceHolder1_AddControl1_lstCat_10">Item 3</label>
    </span>
  </td>
</tr>

enter image description here

3 个答案:

答案 0 :(得分:1)

这(或类似的东西)应该有用。

// WARNING: Untested code. Locator syntax may be
// slightly incorrect.
// Using C#, but other languages are similar.
// Assume driver is a valid IWebDriver instance.
ReadOnlyCollection<IWebElement> checkboxes = driver.FindElements(By.CssSelector("input[type='checkbox']"));
Console.WriteLine(checkboxes.Count);

答案 1 :(得分:0)

    int countedCheckBoxes = driver.FindElements(By.CssSelector("input[type='checkbox']")).Count;

答案 2 :(得分:0)

public int CountCheckBoxes(IWebDriver driver)
    {
        int countedCheckBoxes = driver.FindElements(By.XPath("//input[@type='checkbox']")).Count;
        return countedCheckBoxes;
    }