- Test-Driven Java Development(Second Edition)
- Alex Garcia Viktor Farcic
- 149字
- 2021-06-24 18:31:48
AssertJ
AssertJ works in a similar way to Hamcrest. A major difference is that AssertJ assertions can be concatenated.
To work with AssertJ, the dependency must be added to Gradle's dependencies:
testCompile 'org.assertj:assertj-core:2.0.0'
Let's compare JUnit asserts with AssertJ:
Assert.assertEquals(5, friendships.getFriendsList("Joe").size()); List<String> friendsOfJoe =
Arrays.asList("Audrey", "Peter", "Michael", "Britney", "Paul");
Assert.assertTrue( friendships.getFriendsList("Joe")
.containsAll (friendsOfJoe) );
The same two asserts can be concatenated to a single one in AssertJ:
assertThat(friendships.getFriendsList("Joe")) .hasSize(5) .containsOnly("Audrey", "Peter", "Michael", "Britney", "Paul");
This was a nice improvement. There was no need to have two separate asserts, nor was there a need to create a new list with expected values. Moreover, AssertJ is more readable and easier to understand.
The complete source code can be found in the FriendshipsAssertJTest class at https://bitbucket.org/vfarcic/tdd-java-ch02-example-junit.
Now that we have the tests up and running, we might want to see what the code coverage is that is generated by our tests.
- Embedded Linux Projects Using Yocto Project Cookbook
- Vue.js 2 and Bootstrap 4 Web Development
- 跟“龍哥”學C語言編程
- Elastic Stack應用寶典
- JavaScript by Example
- Unity 5 for Android Essentials
- Python時間序列預測
- 深入理解Android:Wi-Fi、NFC和GPS卷
- PySide 6/PyQt 6快速開發與實戰
- C語言開發基礎教程(Dev-C++)(第2版)
- Getting Started with Nano Server
- Illustrator CS6設計與應用任務教程
- Vue.js光速入門及企業項目開發實戰
- Python物理建模初學者指南(第2版)
- Mastering Bootstrap 4