考虑文本字段的HTML。
<input id="employeeId" class="formInputText" type="text" value="0013" name="employeeId" maxlength="10"/>
我想检索文本框的value=""
属性中的值,并将其存储在字符串变量中。
我构建了文本字段的xpath:
//input[@id='employeeId']
我有以下代码:
driver.findElement(Btn_Save).click();
boolean mandatory_firstName = (first_Name != null && !first_Name.isEmpty() && !first_Name.trim().isEmpty());
boolean mandatory_lastName = (last_Name != null && !last_Name.isEmpty() && !last_Name.trim().isEmpty());
boolean mandatory_userName = (user_Name != null && !user_Name.isEmpty() && !user_Name.trim().isEmpty());
boolean mandatory_Password = (Pass != null && !Pass.isEmpty() && !Pass.trim().isEmpty());
boolean mandatory_ConfPass = (Confirm_Pass != null && !Confirm_Pass.isEmpty() && !Confirm_Pass.trim().isEmpty());
if((mandatory_firstName && mandatory_lastName && mandatory_userName && mandatory_Password && mandatory_ConfPass) == false)
{
Assert.fail("Error: One of the mandatory fields is missing text. \n");
}
else
{
boolean PassConfirmation = (Pass.equals(Confirm_Pass));
if(PassConfirmation == false)
{
Assert.fail("Error: Password and Confirm Password did not match. Run Test again with same passwords. \n");
}
else
{
WebElement employeeID = driver.findElement(By.xpath("//input[@id='employeeId']"));
String empID = employeeID.getText();
System.out.println("ID is: "+empID);
}
}
这段代码从点击保存按钮开始。然后检查必填字段和密码,确认密码。
在同一页面上,有一个员工ID的文本字段,它包含一些预设值。我想提取那个价值。我尝试使用字段和getText()它,但是当我运行我的脚本时,它给了我NOSuchElementFound异常,堆栈跟踪将我引用到WebElement employeeID = driver.findElement(By.xpath("//input[@id='employeeId']"));
命令。
答案 0 :(得分:2)
获取所需的属性,如下所示
String valAttr = driver.findElement(By.id("employeeId")).getAttribute("value");
希望这有帮助
答案 1 :(得分:0)
使用以下代码:
String value = driver.findElement(By.id("employeeId")).getCssValue("value");
答案 2 :(得分:0)
您可以通过以下方式获取WebElement属性的值 -
String empID = driver.findElement(By.id("employeeId")).getAttribute("value");
如果您想以整数形式使用empID,请使用下面的代码 -
int empIDval = Integer.parseInt(empID);