如何使用selenium webdriver将数字从excel表格更改为字符串 我在excel表中将值传递为10,但在Web应用程序中输入为10.0。 提前谢谢
答案 0 :(得分:1)
解决方案1
我希望您使用apache poi从Excel中读取。 在这种情况下,此示例可以帮助您
CellReference cr = new CellReference("A1");
XSSFRow row = sheet.getRow(cr.getRow());
XSSFCell cell = row.getCell(cr.getCol());
switch (cell.getCellType()) {
case XSSFCell.CELL_TYPE_NUMERIC:
System.out.println(cell.getRawValue());
break;
case XSSFCell.CELL_TYPE_BOOLEAN:
System.out.println(cell.getBooleanCellValue());
break;
case XSSFCell.CELL_TYPE_STRING:
System.out.println(cell.getStringCellValue());
break;
default:
System.out.println(cell.getRawValue());
}
对于excel中的值1234,cell.getNumericCellValue()将返回1234.0并且cell.getRawValue()将返回1234
解决方案2
如果您无法在读取Excel的位置修改任何内容,请在使用Webdriver输入值之前格式化String
public static void main(String[] args) {
String input = "1234.0";
try {
double parseDouble = Double.parseDouble(input);
DecimalFormat df = new DecimalFormat("0");
String formatNumber = df.format(parseDouble);
System.out.println(formatNumber);
} catch (Exception e) {
System.out.println("Input is not a numeric");
}
}
答案 1 :(得分:0)
这个输入值应该是字符串,从excel表获取整数值,在这需要将inputvalue更改为string.if我在这个方法中将inputvalue更改为整数,sendkeys(inbuild java方法)不接受整数inputvalue.i这个方法中不需要奇数码。我需要从excelsheet中读取值,并发送给这个方法。
public static void inttypeIn(String objLocator,String inputValue){
try
{
findWebElement(objLocator);
webElement.sendKeys(inputValue);
webElement.sendKeys(Keys.TAB);
APP_LOGS.debug("Typing '" + inputValue + "' in : " + locatorDescription);
}
catch (Exception e)
{
APP_LOGS.debug("FAIL : The locator "+objLocator+" of description '"+locatorDescription+"': does not exists in webpage:");
Reporting.fail("FAIL : The locator '"+objLocator+"' of description '"+locatorDescription+"': does not exists in webpage:");
}
}