- 構(gòu)建高質(zhì)量軟件:持續(xù)集成與持續(xù)交付系統(tǒng)實(shí)踐
- 心藍(lán)
- 438字
- 2021-10-09 14:32:58
第2章
Hamcrest:優(yōu)雅強(qiáng)大的對(duì)象匹配器
第1章介紹了單元測試方法中應(yīng)該包含實(shí)際值與期望值的斷言語句,該語句旨在斷言源程序方法的返回值在某種測試條件下是否滿足預(yù)期,進(jìn)而驗(yàn)證源程序方法的正確性。一種簡潔的說法就是,單元測試是用代碼測試代碼。在單元測試中,斷言(Assertion)語句直接決定了源程序代碼的功能正確與否。試想一下,如果所使用的斷言語句本身就存在缺陷,那么原本正確的程序代碼很有可能會(huì)判錯(cuò)。在JUnit 4.4以前的版本中,我們可以直接使用JUnit自帶的斷言方法,比如,assertTrue()、assertFalse()、assertEquals()、assertNotEquals()等。雖然在大多數(shù)情況下,這些斷言方法可以滿足我們的斷言需要,但是JUnit自帶的斷言方法也存在著某些缺陷,本章將會(huì)逐一列舉并說明。
自JUnit 4.4版本引入了對(duì)Hamcrest的依賴之后,我們就可以直接使用Hamcrest提供的對(duì)象匹配器進(jìn)行斷言了。本書關(guān)于斷言的所有操作都是直接使用Hamcrest提供的對(duì)象匹配器進(jìn)行的。本章將詳細(xì)講解Hamcrest的優(yōu)點(diǎn)及其使用方法。
本章將重點(diǎn)介紹如下內(nèi)容。
- 相對(duì)于JUnit的斷言,Hamcrest有哪些優(yōu)勢?
- Hamcrest提供了哪些不同類型的對(duì)象匹配器?
- 如何自定義Hamcrest對(duì)象匹配器?
- 在REST-Assured中如何使用Hamcrest?
推薦閱讀
- 工程軟件開發(fā)技術(shù)基礎(chǔ)
- 零基礎(chǔ)學(xué)C++程序設(shè)計(jì)
- Effective C#:改善C#代碼的50個(gè)有效方法(原書第3版)
- Power Up Your PowToon Studio Project
- PyTorch Artificial Intelligence Fundamentals
- MySQL數(shù)據(jù)庫基礎(chǔ)實(shí)例教程(微課版)
- Mastering Linux Network Administration
- UML 基礎(chǔ)與 Rose 建模案例(第3版)
- 軟件供應(yīng)鏈安全:源代碼缺陷實(shí)例剖析
- Web前端應(yīng)用開發(fā)技術(shù)
- 多媒體技術(shù)及應(yīng)用
- IBM RUP參考與認(rèn)證指南
- AngularJS UI Development
- Enterprise Application Architecture with .NET Core
- C/C++程序設(shè)計(jì)教程