Book Image

Mastering Unit Testing Using Mockito and JUnit

By : Sujoy Acharya
Book Image

Mastering Unit Testing Using Mockito and JUnit

By: Sujoy Acharya

Overview of this book

Table of Contents (17 chapters)
Mastering Unit Testing Using Mockito and JUnit
About the Author
About the Reviewers

Writing meaningful tests

The common understanding of unit testing is testing the smallest possible part of software, specifically a method. In reality, we do not test methods; rather, we test a logical unit or the behavior of the system.

Logical units can extent to a single method, to an entire class, or a collaboration of multiple classes. For example, a standard calculator program can have an add method for adding two numbers. We can verify the add behavior by invoking the add method, or we can design the calculator program to have a simple calculate API that can take two numbers and an operation (add, subtract, divide, and so on), and depending on the operand type (integer, double, and so on), the calculator may delegate the calculation to a collaborator class, such as a double calculator or a long calculator. We can still unit test the add behavior, but now multiple classes are involved. We can call this new test an integration test.

A unit test verifies an assumption about the behavior...