selenium java.lang.NoSuchMethodError:“在一个文件中,您可以创建一个新的文件夹,”

4nkexdtk  于 2022-11-24  发布在  Java
关注(0)|答案(2)|浏览(92)

我试图运行我的旧的selenium实践脚本,一个月前运行良好,现在抛出错误,特别是在构造函数

PageFactory.initElements(driver, this);

有什么建议吗?

import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.FindBy;
import org.openqa.selenium.support.PageFactory;
import com.crm.qa.base.TestBase;

public class LoginPage extends TestBase {
    
    @FindBy(name="username")`enter code here`
    WebElement Username;

    @FindBy(name="password")
    WebElement Password;
    
    @FindBy(xpath="//div[@class='input-group-btn']//input")
    WebElement LoginBtn;
    
    @FindBy(xpath="//a[contains(text(),'Sign Up')]")
    WebElement SignUPLink;
    
    @FindBy(xpath="//a[@class='navbar-brand']//img")
    WebElement CRMPROLogo;
    
    public  LoginPage() {
        PageFactory.initElements(driver, this);
    }
    //#Actions
    public String ValidateLoginPageTitle() {
         return driver.getTitle();
    }
    public boolean ValidateCRMlogoImg() {
        return CRMPROLogo.isEnabled();
    }
    public  HomePage ValidateLoginTest(String un, String pwd) throws InterruptedException {
        Username.sendKeys(un);
        Password.sendKeys(pwd);
        LoginBtn.click();
        Thread.sleep(3000);
        return new HomePage();
    }
}

堆栈追踪

FAILED CONFIGURATION: @BeforeMethod SetUp
java.lang.NoSuchMethodError: 'void org.openqa.selenium.support.PageFactory.initElements(org.openqa.selenium.SearchContext, java.lang.Object)'
    at com.crm.qa.pages.LoginPage.<init>(LoginPage.java:29)
    at com.crm.qa.testcases.LoginPageTest.SetUp(LoginPageTest.java:24)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
    at java.base/java.lang.reflect.Method.invoke(Method.java:577)
rryofs0p

rryofs0p1#

NoSuchMethodError通常意味着您使用一个版本编译,但正在使用不同的(通常较旧的)版本运行,因此出现异常。
解决方案是确保您正在使用的Java、Selenium和任何其他第三方库的相同版本上进行开发和运行

zyfwsgd6

zyfwsgd62#

我刚刚重新添加了selenium jar文件和TestNG库,它就工作了!
解决方法:项目名称〉右键单击〉构建路径〉配置构建路径...〉添加外部库(添加Selenium jar文件)和〉添加库(添加TestNG)

相关问题