【问题标题】:Difficulty importing Selenium tests into Katalon - Illegal string body character after dollar sign难以将 Selenium 测试导入 Katalon - 美元符号后的非法字符串主体字符
【发布时间】:2018-04-13 17:58:54
【问题描述】:

我正在尝试将 Selenium 测试导入 Katalon,但我不断收到此错误 - 我没有正确转义美元符号吗?

try { if (selenium.getText("//div[@id='footer']/p[@class='copyright']").matches("^\\$\\{sbxFooter1\\}[\\s\\S]*$")) break; } catch (Exception e) {}
    Thread.sleep(1000);
}

非常感谢任何帮助。

【问题讨论】:

  • 请告诉我们确切的错误信息是什么
  • 尝试在matches 字符串周围使用单引号而不是双引号
  • @tim_yates 你能说得更具体点吗?这是我在下面尝试但没有成功的 (int second = 0;; second++) { if (second >= 60) fail("timeout");试试 { if (selenium.getText('//div[@id='footer']/p[@class='copyright']').matches('^\\$\\{sbxFooter1\\}[\\ s\\S]*$")) break; } catch (Exception e) {} Thread.sleep(1000); }
  • @Thomas 具体消息是“美元符号后的非法字符串正文字符”,然后说用反斜杠或括号转义文字美元符号。我已经尝试了一切,但没有运气。 Katalon 的新手,所以我真的非常感谢它
  • 我认为 tim_yates 关于单引号是正确的。或者,您可以看看这个 SO 答案:stackoverflow.com/a/43363786/5956451

标签: selenium groovy katalon-studio


【解决方案1】:

在 Java 正则表达式中,需要对以下符号进行转义:

\.[]{}()*+-?^$|

如果你的正则表达式是

^${sbxFooter}[\s\S]*$

你可以试试

\^\$\{sbxFooter\}\[\\s\\S\]\* 在双引号或单引号内

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-22
    • 1970-01-01
    • 2015-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多