Selenium Java中出现java.lang.NumberFormatException异常错误

thtygnil  于 2022-12-13  发布在  Java
关注(0)|答案(1)|浏览(132)

我是java selenium的新手。我尝试自动化,但失败了。我需要验证我添加到购物车中的产品的单价,以及当我再添加1个相同产品时将出现的价格,但我收到错误“Exception in thread“main”java.lang.NumberFormatException”。
这是我的准则

//check the amount to be paid to the products
String unitPrice = driver.findElement(By.xpath("//span[@class='m-basket-card__price m-basket-card__price--main']")).getText();
System.out.println("single price of the product= " + unitPrice);
String totalPrice = driver.findElement(By.xpath("//sub[@class='js-card-price']")).getText();
System.out.println("total price of the cart = " + totalPrice);
Assert.assertEquals(totalPrice, Integer.parseInt(unitPrice * 2));

最后一行出现错误。
我试着将产品的价格乘以2来验证相同产品的价格是否为2。我将字符串转换为int值。但它给出了一个“Exception in thread“main”java.lang.NumberFormatException”错误。

mwngjboj

mwngjboj1#

您必须将totalPrice转换为int,并将unitPrice相乘,如下:

Assert.assertEquals(Integer.parseInt(totalPrice),Integer.parseInt(unitPrice)*2);

如果unitPricetotalPrice返回浮点数:

Assert.assertEquals(Float.parseFloat(totalPrice),Float.parseFloat(unitPrice)*2);

相关问题