首页 > 解决方案 > 文本中带有撇号 (') 的元素的定位器问题

问题描述

我必须使用 xpath 查找文本 -“收件人”电子邮件地址的格式不正确。xpath 下面对我来说效果很好

(//*[contains(.,"'To' email address is formatted incorrectly.")])[5]

但是当我把这个 xpath 放在我的定位器中时。

@FindBy(xpath="(//*[contains(.,"'To' email address is formatted incorrectly.")])[5]") public WebElement incorrectEmailFormatLabel;

我在代码中收到警告错误消息。我知道这是因为使用了双引号(“'To'...”),但是如果我将其更改为单引号(''To'...'),我会收到此错误消息

invalid selector: Unable to locate an element with the xpath expression (//*[contains(.,''To' email address is formatted incorrectly.')])[5]

让我知道如何解决它?我也关注了这篇文章,这里 xpath 不适合我。

(//*[contains(.,\" 'To' email address is formatted incorrectly.\")])[5]

标签: seleniumxpath

解决方案


在问题中,您使用帮助提供了例外答案显示\

尝试这个:

@FindBy(xpath="(//*[contains(.,\"\'To\' email address is formatted incorrectly.\")])[5]") public WebElement incorrectEmailFormatLabel;

希望这可以帮助!


推荐阅读