What Is Programming? And How To Get Started
January 28, 2025
Article
Instructor: Packt - Course Instructors
Included with
Recommended experience
Intermediate level
Learn unit testing with JUnit, and Mockito. Ideal for Java developers and testers. Basic Java knowledge is required.
Recommended experience
Intermediate level
Learn unit testing with JUnit, and Mockito. Ideal for Java developers and testers. Basic Java knowledge is required.
Analyze production code to identify areas for writing quality unit tests.
Implement JUnit's fail-fast mechanism to improve test efficiency.
Understand and apply Mockito for creating and using mock objects in unit tests.
Create readable assertions by composing Hamcrest matchers.
Add to your LinkedIn profile
September 2024
3 assignments
Add this credential to your LinkedIn profile, resume, or CV
Share it on social media and in your performance review
Are you looking for a simple guide to learning unit testing? This video course is perfect for you. It includes hands-on exercises and best practices to help you understand JUnit and Mockito unit testing with ease.
-The course starts with an introduction to unit testing and the importance of JUnit. -You'll create a Java project using JUnit and follow best practices for writing and running unit tests with JUnit and IntelliJ IDEA. -You'll also write mock object-based unit tests with Mockito and make powerful assertions using the Hamcrest assertions library included with JUnit. -By the end, you'll have the skills to write better unit tests using JUnit, Mockito, and Hamcrest. This course is suitable for Java developers and testers with basic Java knowledge who want to write unit tests using JUnit, Mockito, and Hamcrest. Learn modern unit testing concepts, run tests in the IDE, analyze code for quality tests, and compose readable assertions.
In this module, we will introduce you to the course and its structure. The welcome video provides an overview of what you can expect from the course, setting the stage for your learning journey. Following this, the course structure overview gives a detailed breakdown of each section, ensuring you know how to navigate through the content effectively.
2 videos1 reading
In this module, we will delve into the foundations of unit testing. We'll start with an overview of what unit testing is and the basic concepts behind it. You will then learn about JUnit, a popular tool for unit testing in Java, and see how to write a simple unit test using JUnit. The section continues with detailed explanations of the structure of unit tests, conventions to follow, and the characteristics of proper unit tests. Finally, we will cover the use of assertions in JUnit to validate test results effectively.
8 videos
In this module, we will guide you through the process of creating a Java project using JUnit. We'll begin by demonstrating how to set up a project using the Maven Quickstart Archetype. Next, you'll learn about the typical structure of a Java project, with a focus on the differences between production and test source trees. Finally, we will cover the essential conventions for creating unit tests, including proper package organization and naming practices, ensuring that your tests are well-organized and easy to maintain.
4 videos1 assignment
In this module, we will cover the comprehensive process of writing and running unit tests using JUnit and IntelliJ IDEA. You will learn how to create test methods with the @Test annotation, run these tests within an IDE, and understand the success and failure of tests. We will explore handling exceptions in test failures and the explicit use of Assert.Fail() for validation logic. Additionally, you will be introduced to JUnit's assertions API and the fail-fast test failure mechanism. Finally, we'll delve into best practices like adding descriptive comments to assertions, maintaining DRY principles with @Before, and understanding test fixture instantiation.
13 videos
In this module, we will explore the use of mock objects and Mockito for unit testing. You'll start by understanding the fundamentals of Mockito and how mock objects are used in testing. We will guide you through configuring projects with Mockito and creating projects that utilize both JUnit and Mockito. The section covers coding and testing various layers of a layered architecture, including the presentation, business, and persistence layers, ensuring proper package organization. Additionally, you'll learn about setting up test fixtures for mock object-based tests and writing specific tests for components like the login controller and authentication service. Finally, we will discuss important design decisions to consider when unit testing your applications.
13 videos
In this module, we will dive into the Hamcrest Assertions Library and its applications in unit testing. You will begin by evolving domain and repository classes and learning how to ignore tests using the @ignore annotation. We'll cover the implementation of finders in the repository and business logic in the service layer, along with configuring Maven for Java 8. The section includes refactoring practices to develop new services and generating test methods in the IDE. You'll explore JUnit Mockito Runner, @Mock, and @InjectMocks annotations, and learn to analyze production code for effective test writing. We will replace JUnit assertions with Hamcrest assertions, tackle Hamcrest test failures, and create complex assertions using the allOf method and property matchers.
25 videos2 assignments
Packt helps tech professionals put software to work by distilling and sharing the working knowledge of their peers. Packt is an established global technical learning content provider, founded in Birmingham, UK, with over twenty years of experience delivering premium, rich content from groundbreaking authors on a wide range of emerging and popular technologies.
LearnQuest
Course
Coursera Project Network
Course
Coursera Project Network
Course
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Earn a degree from world-class universities - 100% online
Upskill your employees to excel in the digital economy
Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.
If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You’ll be able to submit assignments once the session starts.
Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You’ll be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.
If you complete the course successfully, your electronic Course Certificate will be added to your Accomplishments page - from there, you can print your Course Certificate or add it to your LinkedIn profile.
This course is one of a few offered on Coursera that are currently available only to learners who have paid or received financial aid, when available.
You will be eligible for a full refund until two weeks after your payment date, or (for courses that have just launched) until two weeks after the first session of the course begins, whichever is later. You cannot receive a refund once you’ve earned a Course Certificate, even if you complete the course within the two-week refund period. See our full refund policy.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.
These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services, such as setting your privacy preferences, logging in or filling in forms. You can set your browser to block or alert you about these cookies, but some parts of the site will not then work.
These cookies may be set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant adverts on other sites. They are based on uniquely identifying your browser and internet device. If you do not allow these cookies, you will experience less targeted advertising.
These cookies allow us to count visits and traffic sources so we can measure and improve the performance of our site. They help us to know which pages are the most and least popular and see how visitors move around the site. If you do not allow these cookies we will not know when you have visited our site, and will not be able to monitor its performance.
These cookies enable the website to provide enhanced functionality and personalization. They may be set by us or by third party providers whose services we have added to our pages. If you do not allow these cookies then some or all of these services may not function properly.