maven mockito_如何:测试Maven项目(JUnit,Mockito,Hamcrest,AssertJ)中的依赖项
maven mockito
對于當(dāng)今的大多數(shù)Java項目而言,JUnit本身還遠(yuǎn)遠(yuǎn)不夠。 您還需要一個模擬庫,也許還有其他東西。 在此迷你操作指南中,我介紹了可以在新的Java項目中開始的測試依賴項。
一切都始于JUnit
Maven存儲庫中的junit組中有兩個工件: junit和junit-dep 。 在4.9版之前,后者不包含對內(nèi)聯(lián)的Hamcrest的依賴。 今天,我們使用junit依賴關(guān)系如下:
dependency:tree產(chǎn)生:
[INFO] \- junit:junit:jar:4.11:test [INFO] \- org.hamcrest:hamcrest-core:jar:1.3:test莫基托
我們通常需要的下一個依賴是一個模擬框架。 毫無疑問, Mockito是最受歡迎的游戲之一。 它有兩個好處: mockito-all和mockito-core 。 第一個是將所有依賴項內(nèi)聯(lián)到其中的單個jar,而后者只是Mockito。 建議將mockito-core與JUnit版本4.11一起使用。 因此,我們添加依賴項:
<dependency><groupId>org.mockito</groupId><artifactId>mockito-core</artifactId><version>1.9.5</version><scope>test</scope> </dependency>現(xiàn)在, dependency:tree產(chǎn)生:
[INFO] +- junit:junit:jar:4.11:test [INFO] | \- org.hamcrest:hamcrest-core:jar:1.3:test [INFO] \- org.mockito:mockito-core:jar:1.9.5:test [INFO] \- org.objenesis:objenesis:jar:1.0:testHamcrest
知道m(xù)ockito-core更適合于聲明式依賴性管理,因此,我們將覆蓋對Hamcrest和Objenesis的依賴性,如下所示:
<dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-core</artifactId><version>1.3</version><scope>test</scope> </dependency><dependency><groupId>org.objenesis</groupId><artifactId>objenesis</artifactId><version>1.3</version><scope>test</scope> </dependency>有了這個,我們可以輕松地添加Hamcrest庫,該庫提供了一個匹配對象庫,依賴項:
<dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-core</artifactId><version>1.3</version><scope>test</scope> </dependency><dependency><groupId>org.objenesis</groupId><artifactId>objenesis</artifactId><version>1.3</version><scope>test</scope> </dependency>并且dependency:tree產(chǎn)生:
[INFO] +- junit:junit:jar:4.11:test [INFO] +- org.mockito:mockito-core:jar:1.9.5:test [INFO] +- org.hamcrest:hamcrest-core:jar:1.3:test [INFO] +- org.hamcrest:hamcrest-library:jar:1.3:test [INFO] \- org.objenesis:objenesis:jar:1.3:test斷言
AssertJ – Java的流暢斷言–提供了一組豐富而直觀的強類型斷言,可用于單元測試。 AssertJ是FEST Assert的一個分支,我前一段時間在這篇文章中寫過。 那依賴性呢? 讓我們來看看:
<dependency><groupId>org.assertj</groupId><artifactId>assertj-core</artifactId><version>1.5.0</version><scope>test</scope> </dependency>結(jié)果如下樹:
[INFO] +- junit:junit:jar:4.11:test [INFO] +- org.mockito:mockito-core:jar:1.9.5:test [INFO] +- org.assertj:assertj-core:jar:1.5.0:test [INFO] +- org.hamcrest:hamcrest-core:jar:1.3:test [INFO] +- org.hamcrest:hamcrest-library:jar:1.3:test [INFO] \- org.objenesis:objenesis:jar:1.3:test最終剪輯
完整的Maven結(jié)構(gòu)如下所示:
<!-- Test --> <dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.11</version><scope>test</scope> </dependency> <dependency><groupId>org.mockito</groupId><artifactId>mockito-core</artifactId><version>1.9.5</version><scope>test</scope> </dependency> <dependency><groupId>org.assertj</groupId><artifactId>assertj-core</artifactId><version>1.5.0</version><scope>test</scope> </dependency> <dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-core</artifactId><version>1.3</version><scope>test</scope> </dependency> <dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-library</artifactId><version>1.3</version><scope>test</scope> </dependency> <dependency><groupId>org.objenesis</groupId><artifactId>objenesis</artifactId><version>1.3</version><scope>test</scope> </dependency>- 您可以在GitHub上的unit-testing-demo項目中找到它(鏈接到pom.xml ),也可以嘗試我的spring-mvc-quickstart-archetype (鏈接到pom.xml )。
翻譯自: https://www.javacodegeeks.com/2014/03/how-to-test-dependencies-in-a-maven-project-junit-mockito-hamcrest-assertj.html
maven mockito
總結(jié)
以上是生活随笔為你收集整理的maven mockito_如何:测试Maven项目(JUnit,Mockito,Hamcrest,AssertJ)中的依赖项的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 入门玄关挂什么画风水好(最旺入门玄关挂画
- 下一篇: 西游之超神电脑.(西游记之超神小游戏)