Angular Material - 如何检查 selenium java 中是不是选中了复选框?

Posted

技术标签:

【中文标题】Angular Material - 如何检查 selenium java 中是不是选中了复选框?【英文标题】:Angular Material - How to check if checkbox is selected in selenium java?Angular Material - 如何检查 selenium java 中是否选中了复选框? 【发布时间】:2018-07-20 18:49:36 【问题描述】:

我想检查复选框是否被选中(在 Selenium + JAVA 中)。 附上代码截图。

注意:我尝试过 .isDisplayed()、.isSelected()、.isEnabled(),没有任何效果

【问题讨论】:

请向我们展示您的自动化代码。另外,当“没有任何工作”时,你会得到什么样的错误? 【参考方案1】:

你可以使用javascript

boolean isChecked = (boolean) ((JavascriptExecutor) driver).executeScript("return arguments[0].checked", myWebElement);

【讨论】:

【参考方案2】:

选项1检查mat-checkbox属性类是否包含mat-checkbox-checked

String classAtr = driver
   .findElemet(By.cssSelector("mat-checkbox")).getAttribute("class");

Assert(classAtr.contains("mat-checkbox-checked")).toBe(true);

选项2勾选里面的复选框isSelected()

boolean isSelected = driver
       .findElemet(By.cssSelector("mat-checkbox input.mat-checkbox-input")).isSelected();
Assert(isSelected )).toBe(true)

【讨论】:

工作。谢谢@yong

以上是关于Angular Material - 如何检查 selenium java 中是不是选中了复选框?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Angular Material 中创建自定义输入错误

如何向 Angular Material datepicker 的所有实例添加指令?

Angular 5 Angular Material 2 - 使用 minLength 自动完成

使用 Angular Material MD Stepper 时,由于访问控制检查,XMLHttpRequest 无法加载 XXXX

更改已检查背景、框架和复选标记的 Angular Material 组件 mat-list-option 复选框的颜色

Angular2 Material:Angular 材质输入的自定义验证