package org.sky.auto.element; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; import org.openqa.selenium.remote.RemoteWebElement; import org.sky.auto.base.AutoBase; import org.sky.auto.exception.MyAutoException; public class CheckBox extends SElement{ private WebElement element; public CheckBox(){ this.setElement(new RemoteWebElement()); } public WebElement getElement() { return element; } public void setElement(WebElement element) { this.element = element; } public CheckBox(By by){ this.element=AutoBase.driver().findElement(by); } public CheckBox(WebElement element){ this.element=element; } /** * 检验这个checkBox多选框是否被选中 * @return true被选中 * false没有被选中 * */ public boolean isChecked(){ if(isExist()){ return getElement().isSelected(); }else{ logger.error("元素不存在,校验失败!"); throw new MyAutoException("["+this.getId()+"]判断元素是否被选中的时候出现了错误,可能的原因是这个元素没有被找到!"); } } /**设置多选框的状态,true是选中,false是取消选中 * @param status 设置选中状态 * */ public void setStatus(boolean status){ if(isExist()){ if(getElement().isSelected()!=status){ getElement().click(); } }else{ logger.error("没有找到元素,设定值失败!"); throw new MyAutoException("["+this.getId()+"]设置状态的时候出现了错误,可能的原因是这个元素没有被找到!"); } } }