我無法使用任何定位器技術找到元素。org.openqa.selenium.NoSuchElementException無法找到元素:方法「:」鏈接文本「,」選擇器「:」http://
到目前爲止,我試過By.linkText,By.cssSelector & By.xpath但無濟於事。當我嘗試使用不同的java類登錄時發生這種情況。但是,如果我用下面的選擇器將所有代碼寫入單個java類(通過createAccount = By.cssSelector(「a.createAccount」);),則不會看到此錯誤。
<a class="createAccount" href="https://www.***.com/registration/" tabindex="9">
<span class="fontIconCreateAccount mdxFont" aria-hidden="true">
<span class="icon icon--pep">
<span class="icon__add-button"></span>
</span>
</span>
Create Account
</a>
將不勝感激的建議。
編輯:添加相應的Java代碼
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
public class LoginPage {
private WebDriver driver;
public LoginPage(WebDriver driver) {
this.driver=driver;
}
By createAccount = By.linkText("https://***.com/registration/");
//By createAccount = By.cssSelector("a.createAccount");
//By createAccount = By.xpath(".//*[@id='signInBottomInformationContainer']/a");
public WebElement createAccountLink(){
return driver.findElement(createAccount);
}
}
感謝
你能提供你的java代碼嗎? –
第一件事 - By.linkText需要鏈接文本([相關文檔在這裏](http://www.seleniumhq.org/docs/03_webdriver.jsp#by-link-text)),而不是href參數。通過href參數查找使用xpath –