草庐IT

Hamcrest-Matcher

全部标签

java - 如何用 Hamcrest 断言某事为空?

我怎么会assertThat某事是null?例如assertThat(attr.getValue(),is(""));但我收到一条错误消息,提示我在is(null)中不能有null。 最佳答案 您可以使用IsNull.nullValue()方法:importstaticorg.hamcrest.Matchers.is;importstaticorg.hamcrest.Matchers.nullValue;assertThat(attr.getValue(),is(nullValue()));

android - 错误 JSON.simple : java. util.zip.ZipException : duplicate entry: org/hamcrest/BaseDescription. 类

在添加JSON.simple并启用MultiDex后,我在androidstudio中遇到问题并收到以下错误:Error:Executionfailedfortask':app:packageAllDebugClassesForMultiDex'.java.util.zip.ZipException:duplicateentry:org/hamcrest/BaseDescription.class这是我的build.gradle:applyplugin:'com.android.application'android{compileSdkVersion23buildToolsVersi

ruby-on-rails - Ruby on Rails 教程 : RSpec test failing when refactoring with matcher

我正在处理MichaelHartl'sRailstutorial并且在使用匹配器重构时无法通过Rspec测试。终端输出Failures:1)AuthenticationloginwithinvalidinformationFailure/Error:it{shouldhave_error_message('Invalid')}NoMethodError:undefinedmethod`has_error_message?'for##./spec/requests/authentication_pages_spec.rb:21:in`block(4levels)in'spec/suppo

java.lang.NoClassDefFoundError : org/hamcrest/SelfDescribing

在eclipse中运行junit测试时,我得到了这个Exception:java.lang.NoClassDefFoundError:org/hamcrest/SelfDescribing我已经添加了junit.jar库文件。我尝试过不同版本的junit.jar:4.4、4.8等如何解决这个异常? 最佳答案 将hamcrest-all-X.X.jar添加到您的类路径。截至2015年2月的最新版本是1.3:http://code.google.com/p/hamcrest/downloads/detail?name=hamcrest-

java.lang.NoClassDefFoundError : org/hamcrest/SelfDescribing

在eclipse中运行junit测试时,我得到了这个Exception:java.lang.NoClassDefFoundError:org/hamcrest/SelfDescribing我已经添加了junit.jar库文件。我尝试过不同版本的junit.jar:4.4、4.8等如何解决这个异常? 最佳答案 将hamcrest-all-X.X.jar添加到您的类路径。截至2015年2月的最新版本是1.3:http://code.google.com/p/hamcrest/downloads/detail?name=hamcrest-

java - 检查 Hamcrest 中的 List 是否为空

我想知道是否有人知道使用assertThat()和Matchers检查列表是否为空的方法?我能看到的最好的方法就是使用JUnit:assertFalse(list.isEmpty());但我希望在Hamcrest有某种方法可以做到这一点。 最佳答案 总会有的assertThat(list.isEmpty(),is(false));...但我猜这不是你的意思:)或者:assertThat((Collection)list,is(not(empty())));empty()是Matchers类中的静态变量。请注意需要将list转换为Co

java - 检查 Hamcrest 中的 List 是否为空

我想知道是否有人知道使用assertThat()和Matchers检查列表是否为空的方法?我能看到的最好的方法就是使用JUnit:assertFalse(list.isEmpty());但我希望在Hamcrest有某种方法可以做到这一点。 最佳答案 总会有的assertThat(list.isEmpty(),is(false));...但我猜这不是你的意思:)或者:assertThat((Collection)list,is(not(empty())));empty()是Matchers类中的静态变量。请注意需要将list转换为Co

java - 为什么我应该使用 Hamcrest-Matcher 和 assertThat() 而不是传统的 assertXXX()-Methods

当我查看Assert类JavaDoc中的示例时assertThat("Help!Integersdon'twork",0,is(1));//fails://failuremessage://Help!Integersdon'twork//expected:is//gotvalue:assertThat("Zeroisone",0,is(not(1)))//passes我没有看到比assertEquals(0,1)有很大的优势。如果结构变得更复杂,消息可能会很好,但您是否看到更多优势?可读性? 最佳答案 对于那些存在与您的意图完全匹配

java - 为什么我应该使用 Hamcrest-Matcher 和 assertThat() 而不是传统的 assertXXX()-Methods

当我查看Assert类JavaDoc中的示例时assertThat("Help!Integersdon'twork",0,is(1));//fails://failuremessage://Help!Integersdon'twork//expected:is//gotvalue:assertThat("Zeroisone",0,is(not(1)))//passes我没有看到比assertEquals(0,1)有很大的优势。如果结构变得更复杂,消息可能会很好,但您是否看到更多优势?可读性? 最佳答案 对于那些存在与您的意图完全匹配

java - 在 IntelliJ 10.5 中运行测试时获取 "NoSuchMethodError: org.hamcrest.Matcher.describeMismatch"

我正在使用JUnit-dep4.10和Hamcrest1.3.RC2。我创建了一个自定义匹配器,如下所示:publicstaticclassMyMatcherextendsTypeSafeMatcher{@OverrideprotectedbooleanmatchesSafely(Strings){/*implementation*/}@OverridepublicvoiddescribeTo(Descriptiondescription){/*implementation*/}@OverrideprotectedvoiddescribeMismatchSafely(Stringite