信任断言库与AssertJ相比

Eug*_*nov 9 assertj fest-assert

在停止开发之后我使用FEST-Assert并移动了AssertJ.

最近我被指向谷歌存储库与另一个断言库Truth(http://google.github.io/truth/).

阅读这些例子,我找不到任何开始使用它的优点AssertJ.所以这只是味道的问题.但也许我错过了这一点,是吗?

Mic*_*das 9

来自他们在GitHub上的一条评论:

核心差异在于真理的设计包括两个特定的可扩展性领域 - 命题失败的策略 - 这样整数的"主题"或者字符串的主题可以在完全不同的结果的环境中重复使用失败.一个值得注意的例子是JUnit使用AssertionError和它的AssumptionViolationException之间的区别.真相允许你为两者使用相同的命题类.

灵活性的另一个方面是能够创建新的断言/命题类型并将其挂钩,而无需声明可能存在冲突的静态方法.这可以用于新类型(例如,添加protobufs)或用于现有类型的新用途(例如,被视为Ur​​is的字符串).这是assertAbout()功能.

除此之外,Truth与AssertJ非常相似,因为它受到FEST的启发,其中AssertJ是2.0开发线的一个分支.

总而言之,Truth被设计为更具可扩展性和灵活性,但AssertJ对于标准类型的断言将是伟大的(可能是最好的).

  • 谢谢,米哈尔,我认为尝试找出答案很重要 (2认同)