1

我正在尝试找到一种可靠的方法来在 Web 应用程序的下拉用户菜单中找到注销链接。这是链接的 html:

<a href="logout.jsp">Logout</a> 

我尝试了以下方法:

    /** The logout link */
@FindBy(how = How.PARTIAL_LINK_TEXT, using = "Logout")
private WebElement logoutLink;

    /** The logout link */
@FindBy(how = How.LINK_TEXT, using = "Logout")
private WebElement logoutLink;

但是,在尝试访问注销链接时,我不断收到 NoSuchElementException。LINK_TEXT 方法之前有效,并且在最近几天神秘地停止了工作。我尝试了 PARTIAL_LINK_TEXT 方法只是为了踢球,但它也失败了。有没有人可以告诉我为什么无法找到链接的原因。我在包含此链接的类上使用 PageFactory.initElements,并且其他 Web 元素的位置没有问题。

4

2 回答 2

3

这是 Selenium 的一个缺陷。我输入了一个错误,并将在下周的某个时间发布一个示例页面和脚本来重现它。

http://code.google.com/p/selenium/issues/detail?id=5772

于 2013-06-20T18:24:54.833 回答
2

请再次检查链接的实际文本。它不起作用可能是文本中可能有空格或可能是大写,小写。你也可以试试,

@FindBy(linkText = “Logout”)

部分链接文本

@FindBy(partialLinkText = “Logout”)
于 2013-05-10T18:32:17.017 回答