java如何从带有log4j的页面对象模型中使用getText打印?
我正在使用Netbeans中的Selenium Webdriver编写一些自动化测试。我有一个非常简单的测试,我正在实现页面对象。我的问题是:
我以前的代码是:
//Click the Timing Parts subcategory WebElement PartSubcategory = driver.findElement(By.xpath("//label[contains(.,'Timing Parts & Camshafts')]")); PartSubcategory.click(); logger.info("Found subcategory: "+PartSubcategory.getText());
在实现了页面对象模型之后,看起来是这样的
页面对象:
public class findPartSubcategory {
private static WebElement element = null;
//Click the Timing Parts subcategory
public static WebElement PartSubcategory(WebDriver driver)
{
element = driver.findElement(By.xpath("//label[contains(.,'Timing Parts & Camshafts')]"));
return element;
}
}
测试代码:
//Click the Timing Parts subcategory
findPartSubcategory.PartSubcategory(driver).click();
logger.info("Found subcategory: "+findPartCategory.getText());
因此,编译错误在getText()中,“找不到符号方法getText()”。我猜这是因为我没有打印出一个正确声明的变量,而是一个页面对象类
那么,我如何才能打印它为页面对象找到的内容呢?是的,我用的是log4j版本。一,
谢谢
# 1 楼答案
你有一个编译错误。正在尝试引用不存在的
findPartCategory.PartCategory
改变
到
您还试图在
findPartSubcategory
类上调用getText()
,我假设您想在WebElement上调用它这将实现与旧代码相同的功能