尝试从span元素获取数字动态文本值 . 我的测试是数据驱动的,因此对于每次运行,它需要从网页获取文本(美元金额),然后将其与excel中的预期值进行比较 . 出于某种原因,我的代码不起作用 . 请帮忙解决 .
我的HTML:
$ 445.87
我的定位器:按PRICE = By.xpath(“// div [@ class ='price ng-binding'] [@ ng-hide ='calc.isCalculating'] / text()”);
我的代码:
WebDriverWait wait = new WebDriverWait(driver, 15);
wait.until(ExpectedConditions.presenceOfElementLocated(PRICE));
WebElement actualPriceElm = driver.findElement(PRICE);
actualPriceElm.getText();
Assert.assertEquals(actualPriceElm, strExpectedPrice);
我的错误:等待15秒后等待存在元素的超时:By.xpath:// div [@ class ='price ng-binding'] [@ ng-hide ='calc.isCalculating'] / text()
当我使用我的xpath没有“/ text()”这样// div [@ class ='price ng-binding'] [@ ng-hide ='calc.isCalculating']然后我得到以下错误:
线程“main”中的异常java.lang.AssertionError:expected [445.87]但发现[[[FirefoxDriver:firefox on WINDOWS(f26e0c00-823f-4d45-8285-014303527524)] - > xpath:// div [@ class ='价格ng-binding'] [@ ng-hide ='calc.isCalculating']]]