webdriver获取input元素值的几种方法

时间:2022-09-06 09:23:45

input输入框DOM结构:

webdriver获取input元素值的几种方法

好的,首先我们给该input传入一个值“123”:

WebElement username = driver.findElement(By.name("username"));
username.sendKeys("123");
现在,我们要做的是怎么将这个“123”读取出来?可能你会想到的是element.getText()这个方法,话不多说,先试一下:
String value = username.getText();System.out.println(value);

调试了一下,居然获取不到。。。于是查了相关资料,问题终于解决了

1、通过元素属性来获取值

String value = username.getAttribute("value");
2、通过js来获取值
JavascriptExecutor js = (JavascriptExecutor) driver;String value = (String)js.executeScript("return arguments[0].value;",username);

3、通过jquery来获取值

JavascriptExecutor js = (JavascriptExecutor) driver;
(1):String value = (String)js.executeScript("return $('#username').attr('value');");
(2):String value = (String)js.executeScript("return $('#username').val();");

 

其实,这3种方法都是等价的,就看自己的选择了,最后,将结果打印出来:

System.out.println(value);

webdriver获取input元素值的几种方法