我在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只是一个被比较的字符串。我错过了什么?
答案 0 :(得分:11)
看起来你实际上正在使用正则表达式。看起来这可能是你想要做的事情吗?
Assert.assertTrue(driver.getTitle().matches("*TST-*[0-9]{5}"));
编辑#1:
看起来您的正则表达式可能不太正确,请尝试:
Assert.assertTrue(driver.getTitle().matches(".*TST-\\d{5}.*"));
答案 1 :(得分:0)
你断言这两个字符串是一样的。在你的情况下,你试图检查你的标题是否等于“regexp: TST - [0-9] {5}”,而不是正则表达式。
您可能想要这样做:
assert_true(driver.getTitle().matches("*TST-*[0-9]{5}"));