在 JUnit 中断言正则表达式匹配项
Ruby有一个很好的方法,可以在单元测试中用于断言正则表达式与字符串匹配。Test::Unit
assert_matches
JUnit中有类似的东西吗?目前,我这样做:
assertEquals(true, actual.matches(expectedRegex));
Ruby有一个很好的方法,可以在单元测试中用于断言正则表达式与字符串匹配。Test::Unit
assert_matches
JUnit中有类似的东西吗?目前,我这样做:
assertEquals(true, actual.matches(expectedRegex));
如果您与测试正则表达式匹配的Hamcrest匹配器一起使用,那么如果断言失败,您将收到一条指示预期模式和实际文本的漂亮消息。断言也会读得更流畅,例如assertThat()
assertThat("FooBarBaz", matchesPattern("^Foo"));
使用Hamcrest 2,您可以在上找到一种方法。matchesPattern
MatchesPattern.matchesPattern
我不知道其他选择。刚刚检查了断言javadoc以确保。不过,这只是一个小小的改变:
assertTrue(actual.matches(expectedRegex));
编辑:自从pholser的答案以来,我一直在使用Hamcrest匹配器,也检查一下!