I have to test RadTreeView Checkboxes in selenium webdriver java. Could you please tell me how to automate Telerik multiselect dropdown with RadTreeView checkboxes controls in selenium webdriver java?RadTreeView Checkbox example
Reference URL: https://demos.telerik.com/aspnet-ajax/treeview/examples/functionality/checkboxes/defaultcs.aspx
I can get all parent elements, and child elements also. but while looping it gives wrong results. I can make a loop for parent elements. but if I try to loop child elements based on parent I could not get the result.
Code:
List dropdownParentElementsCollapsebtns = driver .findElements(By.xpath("//[@id='ctl00_PageContent_rgResourceCate_EmbeddedTree']/ul/li/div/span[2]")); List dropdownParentElementsChkbxs = driver .findElements(By.xpath("//[@id='ctl00_PageContent_rgResourceCate_EmbeddedTree']/ul/li/div/span[3]")); List dropdownParentElementsNames = driver .findElements(By.xpath("//[@id='ctl00_PageContent_rgResourceCate_EmbeddedTree']/ul/li/div/span[4]")); List allChildElements = driver .findElements(By.xpath("//[@id='ctl00_PageContent_rgResourceCate_EmbeddedTree']/ul/li/ul/li")); List allChildElementsChkbxs = driver.findElements( By.xpath("//[@id='ctl00_PageContent_rgResourceCate_EmbeddedTree']/ul/li/ul/li/div/span[2]")); List allChildElementsNames = driver.findElements( By.xpath("//[@id='ctl00_PageContent_rgResourceCate_EmbeddedTree']/ul/li/ul/li/div/span[3]"));
if (dropdownParentElements.size() < 0) {
System.out.println("No Elements available");
} else {
System.out.println(" Elements available");
}
boolean isCheckSelected = false;
//For Parent Elements
for (int i = 0; i < dropdownParentElementsChkbxs.size(); i++) {
WebElement checkbox = dropdownParentElementsChkbxs.get(i);
WebElement collapsebtn = dropdownParentElementsCollapsebtns.get(i);
String name = dropdownParentElementsNames.get(i).getText();
/*
* if (checkbox.isSelected()) { System.out.println(name +
* " is Already Selected"); } else { checkbox.click(); System.out.println(name +
* " is Selected"); }
*/
if (!(checkbox.isSelected())) {
checkbox.click();
isCheckSelected = true;
}
if (isCheckSelected == true) {
collapsebtn.click();
}
}
//List<String> SelectedChapList = new ArrayList<String>();
//Looping child based on parent
for (int i = 0; i < dropdownParentElementsChkbxs.size(); i++) {
dropdownParentElementsChkbxs.get(i).click();
WebElement collapsebtn = dropdownParentElementsCollapsebtns.get(i);
collapsebtn.click();
for (WebElement childelementChkbx : allChildElementsChkbxs) {
System.out.println(childelementChkbx.getAttribute("class"));
if (childelementChkbx.getAttribute("class") == "rtUnchecked") {
childelementChkbx.click();
}
}
}
Kindly let me know if you get any idea. Thank You
Aucun commentaire:
Enregistrer un commentaire