【问题标题】:Xpath to match case sensitive of multiple stringsXpath匹配多个字符串的大小写敏感
【发布时间】:2019-06-25 01:13:48
【问题描述】:

我需要在应用程序中输入字段值,并且该字段没有唯一属性。所以我正在使用 text() 函数并且它有效。此应用程序在供应商之间略有不同。

在应用程序中,对于 vendor1,字段名称为: 物理街道 地址

对于其他供应商,它是 物理街道 地址

两个供应商之间的 Streed 和 Address 区分大小写,因此我的脚本失败了。

我的 xpath 为第二个供应商工作但对第一个供应商失败:

//tr[td[contains(text(),'Physical Street Address')]]/td//input[contains(@id, 'part1')]

我检查了翻译,但它不起作用。

【问题讨论】:

标签: selenium xpath xpath-1.0


【解决方案1】:

不知道为什么translate() 在你的最后没有工作。也许您的代码试验可能有助于我们调试问题。您可以使用以下解决方案:

//tr[td[translate('Physical Street Address','abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')]]/td//input[contains(@id, 'part1')]

【讨论】:

    【解决方案2】:

    我确信有一个更优雅的解决方案,但我认为它也应该可以工作

    //tr[td[contains(text(),'Physical Street Address') or contains(text(),'Physical street Address')]]/td//input[contains(@id, 'part1')]
    

    【讨论】:

    • 对不起,在第二个条件中也忘记从小写字母开始添加“地址”。
    • 即使在发布您的答案之后,您也可以通过单击您的答案下方的edit 链接来修改您的答案,该链接位于shareflag 链接之间。如果您仍然需要帮助并需要进一步的帮助,请告诉我。
    猜你喜欢
    • 1970-01-01
    • 2010-11-26
    • 1970-01-01
    • 2011-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-31
    • 2019-04-15
    相关资源
    最近更新 更多