如何检查是不是在 Selenium 中选中了在 ExtJs 中实现为按钮的复选框? [复制]
Posted
技术标签:
【中文标题】如何检查是不是在 Selenium 中选中了在 ExtJs 中实现为按钮的复选框? [复制]【英文标题】:How to check if checkbox implemented as button in ExtJs is checked in Selenium? [duplicate]如何检查是否在 Selenium 中选中了在 ExtJs 中实现为按钮的复选框? [复制] 【发布时间】:2012-09-21 23:53:00 【问题描述】:可能重复:Selenium checkbox attribute “checked”
我正在测试一个用 ExtJs 实现的应用程序。
复选框和单选按钮被实现为按钮。
我正在尝试获取复选框的状态,如果它被选中或没有使用 Selenium。
这里是实现:
<td id="checkboxfield-1258-bodyEl" class="x-form-item-body x-form-cb-wrap" role="presentation" colspan="3" style="width: 100%;">
<input id="checkboxfield-1258-inputEl" class="x-form-field x-form-checkbox" type="button" hidefocus="true" autocomplete="off" aria-invalid="false" data-errorqtip="" style="-moz-user-select: text;">
<label id="checkboxfield-1258-boxLabelEl" class="x-form-cb-label x-form-cb-label-after" for="checkboxfield-1258-inputEl">Use External tag</label>
</td>
有人可以指导我如何检查状态吗?
谢谢, 哈帕尔
【问题讨论】:
【参考方案1】:第一个可能的解决方案: 你在 API 中尝试过这个 isSelected() 方法吗?
isChecked = e.findElement(By.tagName("input")).Selected;
isChecked = e.findElement(By.tagName("input")).isSelected;
查看更多信息here 第二种可能的解决方案: 这是获取元素某些属性的函数:
public String jsGetColor(String css)
javascriptExecutor js = (JavascriptExecutor) driver;
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("var x=$(\'"+css+"\');");
stringBuilder.append("return x.css('color')");
String res= (String) js.executeScript(stringBuilder.toString());
return res;
希望对你有帮助)
【讨论】:
以上是关于如何检查是不是在 Selenium 中选中了在 ExtJs 中实现为按钮的复选框? [复制]的主要内容,如果未能解决你的问题,请参考以下文章