Android Unit Testing and Test Driven Development
4.7 (59 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
436 students enrolled

Android Unit Testing and Test Driven Development

Learn to unit test your Android applications and become better Android developer
Best Seller
4.7 (59 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
436 students enrolled
Created by Vasiliy Zukanov
Last updated 9/2018
English
English
30-Day Money-Back Guarantee
Includes
  • 3.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Interactive Features
This course offers interactive exercises and downloadable resources. Learn more.
  • 1 Downloadable resource
Training 5 or more people?

Get your team access to Udemy's top 2,500+ courses anytime, anywhere.

Try Udemy for Business
What Will I Learn?
  • Learn to unit test your code
  • Understand Android specific challenges with respect to unit testing

  • Learn to write testable Android applications

  • Practice unit testing with carefully designed exercises
  • Understand the benefits of Test Driven Development
  • Get tips for adoption of unit testing on Android projects
Requirements
  • Experience with Android (preferably 6 months or more)
  • Knowledge of Java
Description

This course will teach you all you need to know about Unit Testing and Test Driven Development in general, and unit testing in Android specifically.

What's unit testing?

Unit testing is a practice of writing narrowly scoped automated tests to ensure correctness of your production code. These automated tests allow you to write code that has fewer bugs and is safer to work with in the long term. If you do unit testing, you can write higher quality Android applications that are easier to maintain.

What's test driven development?

Test driven development (TDD) is a set of special unit testing techniques that mandate writing the tests before the production code. While TDD might look complicated on the first sight, I'll show you that it's actually the easiest way to do unit testing.

What's the importance of unit testing in Android?

Unit testing is widely considered one of the most important skills for senior Android developers to have. It's a great investment into medium- and long-term professional career growth.

If bugs slip into your Android application, it can be very challenging to locate and fix them. Furthermore, even after you fix the bugs, it can take days or even weeks until all your users update the app to actually receive these fixes. That's a tough reality of professional Android developer's job. Fortunately, you can greatly reduce the number of bugs in your applications by unit testing your code!

To make your applications unit testable, you'll need to write decoupled code that follows best design principles. This automatically guarantees easier long-term maintenance. In addition, unit testing makes developing Android applications easier and spares a lot of time when done right. 

Why you should take this course:

This course is designed to introduce you to professional grade Android unit testing in the shortest amount of time. I assume that you already know Java and have experience building Android apps. Therefore, this course will not waste your time on Java and Android basics. 

You'll practice what you learn in this course with carefully designed exercises and gradually build up your unit testing skill. 

This course is aimed at professional Android developers who have no prior experience in unit testing. However, I'm confident that even experienced Android unit testers will find much new and valuable information in it.

So, if you're interested in learning professional grade unit testing in Android apps - this course is for you.

Who is the target audience?
  • Professional Android developers
Curriculum For This Course
52 Lectures
03:44:23
+
Unit Testing Fundamentals
11 Lectures 34:47
Udemy Course Review Popup
01:07
Congratulations on Completion of the First Excercise
02:39
Exercise 2
00:26
How to Choose Test Cases
09:04
Exercise 3
00:29
Unit Testing Fundamentals
01:40
+

Test Doubles Fundamentals

10 Lectures 42:53
External Dependencies
03:38
Test Doubles
01:33
Choosing Test Cases with Test Doubles
06:59
Testing with Test Doubles Part 1
08:43
Testing with Test Doubles Part 2
10:01
Exercise 4
00:40
The Many Meanings of Mock
01:17
Singletons
04:05
Test Doubles Fundamentals
01:19
+

Mockito Fundamentals

9 Lectures 33:18
Mockito
01:04
Testing with Mockito
14:50
Exercise 5
00:33
Objects vs Data Structures
04:39
Annotation Based Mocks Initialization
00:47
Test Class Template
06:02
Mockito Fundamentals
02:21
+
Test Driven Development
13 Lectures 01:19:59
Issues with Writing Unit Tests After Production Code
02:15
All Test Up-Front TDD Technique
15:37
Exercise 6
01:06
All Tests Up-Front Benefits and Limitations
01:58
The Three Rules of TDD by Uncle Bob
01:10
Uncle Bob's TDD Technique
15:47
Exercise 7
01:27
Uncle Bob's Technique Benefits and Limitations
02:48
AndroidStudio Splits
02:26
Synchronous and Asynchronous Execution
01:13
Testing Observer
29:44
Exercise 8
01:38
+
Unit Testing in Android
5 Lectures 21:14
Android Framework as Java Superset
01:19
The Minor Challenges of Unit Testing in Android
05:32
The Major Challenges of Unit Testing in Android
03:58
Testability in Android
05:08
+
Conclusion
4 Lectures 12:12
Unit Testing as Discipline and Practice
05:02
How to Get Started
01:41
Next Steps and Conclusion
04:04
Bonus Lecture: Course Coupons and Social Links
01:25