我正在设置测试以执行搜索,在搜索完成后,我想捕获结果行,其中显示"关于xxx结果(x.xx秒)" 这是代码段
FirefoxDriver driver = new FirefoxDriver();
driver.get("http://google.com");
driver.manage().window().maximize();
WebElement searchBox = driver.findElementById("lst-ib");
searchBox.sendKeys("search text");
WebElement clickSearch = driver.findElementByXPath("html/body/div/div[3]/form/div[2]/div[2]/div[1]/div[1]/div[2]/div/div/div/button");
clickSearch.click();
WebElement results = driver.findElementByXPath("html/body/div[1]/div[5]/div[4]/div[5]/div[1]/div[1]/div/div/div");
System.out.println(results);
答案 0 :(得分:1)
您需要使用getText()
方法将文本格式化为元素。在您的情况下,您需要执行以下操作,
WebElement results = driver.findElement(By.xpath("html/body/div[1]/div[5]/div[4]/div[5]/div[1]/div[1]/div/div/div"));
System.out.println(results.getText());
答案 1 :(得分:0)
您需要捕获的行将具有选择器:
的CSS:
#resultStats
Xpath的:
//div[@id='resultStats']
如果您需要返回文字:
//div[@id='resultStats']//text()
或者使用find和getText()方法。