WebDriver处理readonly日历输入框输入值

上一篇 / 下一篇  2015-06-02 18:12:43 / 个人分类:Selenium

      在测试的过程中我们会遇到一些日期输入框,是通过选择日历来输入日期的,没法直接从键盘输入数据到输入框中,因为该输入框的属性是只读(readonly)的,没法直接通过sendKeys进行值输入。
解决办法:
1.通过JavascriptExecutor类执行JavaScript清除运行时日期输入框的readonly属性的脚本
2.调用clear()方法清除默认值
3.调用sendKeys()方法输入日期

清除readonly属性代码:

import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;

public class ElementOprationUtil {
private WebDriver driver;
public ElementOprationUtil(WebDriver driver){
this.driver = driver;
}
public void removeAttri_Readonly(String id){
JavascriptExecutor jsExecutor = (JavascriptExecutor)driver;
//清除readonly属性
jsExecutor.executeScript("var setDate=document.getElementById(\""+ id +"\");setDate.removeAttribute('readonly');");
}

}

TAG: 日历 日期输入 readonly ReadOnly webdriver

 

评分:0

我来说两句

Open Toolbar