开发者

Using regexp in assertEquals() does not work

开发者 https://www.devze.com 2023-01-28 02:35 出处:网络
I\'m having problems with using regexp in my assertEquals() statement. This is the statement. Assert.assertEquals(\"regexp:*TST-*[0-9]{5}\", driver.getTitle());

I'm having problems with using regexp in my assertEquals() statement. This is the statement.

Assert.assertEquals("regexp:*TST-*[0-9]{5}", driver.getTitle());

But I get th开发者_开发知识库is error:

org.junit.ComparisonFailure: expected:<[regexp:*TST-*[0-9]{5}]> but was:<[[#TST-23570] This is the new summary]>

It looks like the regexp is just a string that is being compared. What am I missing?


It doesn't look like you're actually using the regex. It seems like maybe this is what you're trying to do?

Assert.assertTrue(driver.getTitle().matches("*TST-*[0-9]{5}"));

EDIT #1:

It also seems like your regex might not be quite right, try:

Assert.assertTrue(driver.getTitle().matches(".*TST-\\d{5}.*"));


You're asserting the two Strings are the same. In your case you're trying to check that your title is equal to "regexp:TST-[0-9]{5}", and not the regexp.

You maybe want to do this:

assert_true(driver.getTitle().matches("*TST-*[0-9]{5}"));

http://cupi2.uniandes.edu.co/javadoc/j2se/1.5.0/docs/api/java/lang/String.html#matches(java.lang.String)

0

精彩评论

暂无评论...
验证码 换一张
取 消