我有一个看起来像这样的元素:
<span class="tab_caption_text">Change Tasks (1)</span>
当然,呈现的按钮显示的是“更改任务(1)”,而不是“更改任务&nbsp(1)”
我的问题是
driver.findElement(By.xpath("//span[contains(text(), 'Change Tasks')]");
无效,因为该空格被视为&nbsp。现在,我无法使用&nbsp,因为它们将在选项卡中进行搜索。有很多两个词。呼叫者必须使用而不是空格。
我有什么办法可以搜索这个?我想我方法的调用者可以传递“ Change Tasks”之类的东西,我可以做一个replaceAll(“”,“”),但这看起来很笨拙,不是吗?
p.s。,这是与Chromedriver,Java 1.8和Selenium一起使用的
插入一个不间断的空格,而不是常规空格。这是通过Windows上的Alt+0160
或Mac上的Alt+Shift+Space
完成的。
警告,这可能会使您的代码难以维护,因为在人眼看来,它们看起来是相同的。如果不可接受,您可能会发现this答案会进一步提供帮助。