2017-06-12 66 views
0

我想选择的复选框,并检查自己是否检查HTML看起来像这样Java的硒越来越元素表单的被选中的JavaScript

h3>Checkboxes</h3> 
<form id="checkboxes"> 
<input type="checkbox"> 
checkbox 1 
<br> 
<input checked="" type="checkbox"> 
checkbox 2 
</form> 
</div> 


h3>Checkboxes</h3> 
<form id="checkboxes"> 
<input type="checkbox"> 
checkbox 1 
<br> 
<input checked="" type="checkbox"> 
checkbox 2 
</form> 
</div> 

<script> 

var form = document.getElementById('checkboxes'); 
var checkboxes = form.getElementsByTagName('input'); 
for (var i=0, len=checkboxes.length; i<len; i++) { 
    checkboxes[i].onclick = function() { 
     this.checked ? this.setAttribute("checked", "") : this.removeAttribute("checked"); 
    } 
} 
</script> 

我试图通过XPath来获得elemtns出来,id和tagName,但没有任何工作。

这里是我的Java代码:

WebDriver driver = new FirefoxDriver(); 
     driver.get("http://the-internet.herokuapp.com/"); 
     driver.findElement(By.xpath("html/body/div[2]/div/ul/li[5]/a")).click(); 
     List<WebElement> elements = driver.findElements(By.id("checkboxes")); 

我万阿英,蒋达清是元素的大小为0

回答

0

您可以通过下面写Java代码中找到的复选框号:

System.setProperty("webdriver.gecko.driver", "src/geckodriver"); 
    WebDriver driver = new FirefoxDriver(); 

    WebDriverWait wait = new WebDriverWait(driver, 30); 
    driver.get("http://the-internet.herokuapp.com/"); 
    driver.findElement(By.xpath("html/body/div[2]/div/ul/li[5]/a")).click(); 

    By locator = By.xpath("//input[@type='checkbox']"); 
    wait.until(ExpectedConditions.presenceOfElementLocated(locator)); 
    wait.until(ExpectedConditions.visibilityOfElementLocated(locator)); 
    List<WebElement> elements = driver.findElements(locator); 
    int size = elements.size(); 
    System.out.println(size); 

您可以选择任何您想要的复选框,然后您可以检查网页上复选框的状态:

代码段用于检查复选框

for(int i=0; i<elements.size();i++){ 
     String check_state= elements.get(i).getAttribute("checked"); 
     if(check_state == null){ 
      System.out.println("Checbox "+(i+1)+" is not selected"); 
     } 
    } 
+0

谢谢你真的太多它的工作状态。你能告诉我,在哪里我可以了解更多关于你使用的xpath //输入[@ type ='checkbox']因为我总是不确定我应该使用哪条路径。 – Fsociety