简体   繁体   中英

Selenium @FindBy linkText or @FindBy partialLinkText not working

I'm working for automation, I'm trying to click on an element ,this element has no id, classname so I'm using the xpath. To improve my code I would like to find this element by href, so I'm using:

@FindBy(linkText="Transfer")
WebElement transferBtn;

I also tried with:

@FindBy(partialLinkText="Transfer")
WebElement transferBtn;

But my code doesn't find the webElement, it's working for other href but not all. I think the problem is developer tools, i'll show you the element:

<a href="#">My transfer</a>

Do you have any idea of the problem, why it's not working? Thanks.

Change Transfer to My transfer

@FindBy(linkText="My transfer")
WebElement transferBtn;

OR Change Transfer to transfer

@FindBy(partialLinkText="transfer")
WebElement transferBtn;

As per the HTML you have shared you can use either of the following solutions:

  • linkText :

     @FindBy(linkText = "My transfer") WebElement transferBtn;
  • partialLinkText :

     @FindBy(partialLinkText = "transfer") WebElement transferBtn;
  • xpath :

     @FindBy(xpath = "//a[contains(.,'My transfer')]") WebElement transferBtn;

I hope this will work

@FindBy(xpath = "//a[text()='My transfer']");
WebElement Transferbtn;

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM