在assertequals()中使用regexp不起作用
-
30-09-2019 - |
题
我在我的AsserTequals()语句中使用RegexP时遇到问题。这是陈述。
Assert.assertEquals("regexp:*TST-*[0-9]{5}", driver.getTitle());
但是我得到了这个错误:
org.junit.ComparisonFailure: expected:<[regexp:*TST-*[0-9]{5}]> but was:<[[#TST-23570] This is the new summary]>
看起来Regexp只是正在比较的字符串。我想念什么?
解决方案
看起来您实际上并不是 使用 正则。似乎这可能是您要做的?
Assert.assertTrue(driver.getTitle().matches("*TST-*[0-9]{5}"));
编辑#1:
看来您的正则是不太正确的,请尝试:
Assert.assertTrue(driver.getTitle().matches(".*TST-\\d{5}.*"));
其他提示
您断言这两个字符串是相同的。在您的情况下,您要检查您的标题是否等于“ Regexp:TST-0-9] {5}”,而不是Regexp。
您可能想这样做:
assert_true(driver.getTitle().matches("*TST-*[0-9]{5}"));
不隶属于 StackOverflow