Pain Free Mocking with Jest
Learn to confidently test JavaScript applications and mock dependencies using Jest, the pain-free way.
Understand how to painlessly use Mocks, Spies, and Stubs to test any part of your application, without worrying about Databases, APIs and Security Tokens.
After finishing this course (which only takes a single afternoon), you'll feel confident in your testing skills because you'll have all the knowledge and tools you need to effectively and painlessly test even complex applications in the real world without headaches.
- 4.4 / 5 (10 ratings)
- Published
- Updated
2 hrs 36 mins
39 Videos
Akinwale Folorunsho Habibullah
I'm Akinwale Habib. I am a senior software engineer and a former bootcamp instructor at Andela. I have led technical teams to develop eHealth products at Savics, and also helped many aspiring software engineers learn the proper way to write applications using Agile methodologies and TDD.
01Remote
You can take the course from anywhere in the world, as long as you have a computer and an internet connection.
02Self-Paced
Learn at your own pace, whenever it's convenient for you. With no rigid schedule to worry about, you can take the course on your own terms.
03Community
Join a vibrant community of other students who are also learning with Pain Free Mocking with Jest. Ask questions, get feedback and collaborate with others to take your skills to the next level.
04Structured
Learn in a cohesive fashion that's easy to follow. With a clear progression from basic principles to advanced techniques, you'll grow stronger and more skilled with each module.
How to write unit and integration tests with Jest
How to test functions that interact with Controllers, APIs, and Databases (without relying on their responses)
How to test code in isolation with Mocks, Spies, and Stubs using Mockingoose
How to write integration tests for HTTP endpoints and database connections
Advanced mocking and integration testing techniques like the 3A pattern, network manipulation, and more
How to become a test strategist with the Agile Testing Quadrant, create CI test pipelines, and add tests to the development lifecycle
The Issue With Unit Testing & Mocks
Writing unit tests has always been equal parts important and confusing.
While writing your first unit test is simple and easy, the learning curve becomes very steep very quickly once you have to test actual real-life scenarios.
Because suddenly, you have to know how to mock a database call or spy an HTTP request or stub a 3rd party API with a security token. When you have to test real-life scenarios like that, things become much more complex than they initially seemed.
With every test case being different from the next one, and with Mocks not being used anywhere else in coding except for testing, it's hard to find quality information online. Every answer is different from the next one and is aimed for an ultra-specific scenario that won't necessarily apply to any other case, including yours.
Instead of making things clear, this confuses things even further.
How "Pain Free Mocking with Jest" Helps:
"Pain Free Mocking with Jest" is designed to make testing painless by helping you understand once and for all the 'How', 'What', and 'When' of Mocks, Spies, and Stubs using the Jest testing framework.
You will learn how to write simple and complex test cases, utilize Jest's mocking capabilities, and gain hands-on experience with real-world testing scenarios that involve Databases, HTTP requests, and 3rd Party APIs.
By the end of the course, you'll feel confident using Mocks, Spies and Stubs in any scenario you may need them. You'll have all the knowledge and tools you need to create complete test suites and confidently test JavaScript applications with mocking without headaches.
Course Content Overview
Course Overview: Total Modules: 6 Total Lessons: 37 Total Video Runtime: 2 hours, 28 minutes
Summary:
- Build and test a Node.js REST API application with authentication features like 'Sign Up' and 'Sign In'.
- Learn how to test everything from simple functions all the way to Controllers that interract with 3rd party web services.
- Learn the 'What', 'How', and 'When' of Mocks, Spies, and Stubs.
- Learn to see your application code in testable units.
- Write integration tests for HTTP endpoints, controllers, middleware functions, and 3rd party integrations.
- Create Git hooks to run unit tests before each commit
- Build a CI pipeline using Github Actions to automate running integration tests on each git push to Github.
Our students work at
Sample Course Lessons
Course Syllabus and Content
Pain Free Mocking with Jest teaches you how to effectively and painlessly test JavaScript applications with Jest. You'll start by learning how to write unit and integration tests as well as the 'How', 'What', and 'When' of Mocks, Stubs, and Spies. Then we'll move to more advanced technique and strategies you'll be using for the rest of your career, including how to have a hollistic approach to testing and how to automatically add your tests in the development lifecycle.
Introduction
6 Lessons 20 Minutes
Everything you need to know to start testing with Jest. You'll set up your environment, learn how to think like a tester with the Testing Pyramid and you'll even write your first test!
- Sneak Peek00:03:21
- Sneak Peek00:03:37
- Sneak Peek00:02:11
- Sneak Peek00:03:06
- Sneak Peek00:02:07
- Free00:06:00
Getting started with mocking and unit testing
13 Lessons1 Hours 2 Minutes
Get started with unit testing and mocking. Write more unit tests, learn how, when, and why to use mocks, stubs, and spies, mock databases and participate in some fun testing exercises.
- Sneak Peek00:03:34
- Sneak Peek00:02:58
- Sneak Peek00:07:55
- Sneak Peek00:07:23
- Sneak Peek00:01:38
- Sneak Peek00:05:23
- Sneak Peek00:02:52
- Sneak Peek00:04:35
- Sneak Peek00:03:38
- Sneak Peek00:08:53
- Sneak Peek00:02:17
- Sneak Peek00:04:05
- Sneak Peek00:07:33
Getting started with integration testing
9 Lessons 37 Minutes
Get started with integration testing. Separate the database from your tests, learn how to test HTTP endpoints, run parallel tests, mock API integrations and participate in even more fun exercises.
- Sneak Peek00:02:09
- Sneak Peek00:05:24
- Sneak Peek00:06:25
- Sneak Peek00:04:03
- Sneak Peek00:03:39
- Sneak Peek00:02:10
- Sneak Peek00:03:37
- Sneak Peek00:05:37
- Sneak Peek00:04:47
Advanced mocking and integration testing
5 Lessons 18 Minutes
Learn advanced mocking and testing techniques. Test complex edge cases like slow or inconsistent networks and learn how to create consistent testing environments with test containers.
- Sneak Peek00:01:59
- Sneak Peek00:02:45
- Sneak Peek00:07:10
- Sneak Peek00:03:15
- Sneak Peek00:03:39
Testing strategy
5 Lessons 14 Minutes
Become a test strategist by learning about test costs, maintainability and how to have a hollistic testing approach with the Agile Testing Quadrant. Add your tests to the development cycle by setting up Git hooks with Husky and CI pipelines with GitHub actions.
- Sneak Peek00:03:14
- Sneak Peek00:03:23
- Sneak Peek00:03:41
- Sneak Peek00:01:31
- Sneak Peek00:02:39
Conclusion
1 Lesson 1 Minutes
You did it! By now you'll feel confident testing JavaScript applications with Jest because you have all the knowledge and tools you need to test applications in the real world without headaches.
- Sneak Peek00:01:31
Subscribe for a Free Lesson
By subscribing to the newline newsletter, you will also receive weekly, hands-on tutorials and updates on upcoming courses in your inbox.
What Students are Saying
Meet the Course Instructor
Purchase the course today
newline Pro Subscription
$18/MO
Get unlimited access to the course, plus 60+ newline books, guides and courses. Learn More
Billed annually or $40/mo billed monthly. Free to cancel anytime.
- Discord Community Access
- Full Transcripts
- Money Back Guarantee
- Lifetime Access
Plus:
- Unlimited access to 60+ newline Books, Guides and Courses
- Interactive, Live Project Demos for Every newline Book, Guide and Course
- Complete Project Source Code for Every newline Book, Guide and Course
- Best Value π
Frequently Asked Questions
What is Pain Free Mocking with Jest?
"Pain Free Mocking with Jest" is how you make testing and mocking simple, painless, and headache-free.
This means you'll learn how, when, and why to use Mocks, Spies, and Stubs to isolate tests from Databases, APIs, and all dependencies, so you can test entire JavaScript applications without breaking a sweat.
We'll also go high level, teaching you about testing strategy, git hooks, CI pipelines and how to seamlessly incorporate test runs into your development cycle
Who is this course for?
This course is for everyone who is tired of not knowing how and when to use mocks.
For everyone who wants to feel confident in their testing abilites.
For everyone who wants to be able to test JavaScript applications from scratch, even if they deal with databases and external APIs.
For everyone who has to deal with testing at their job or wants to build a working application for themselves.
And for everyone who wants to make testing paineless and headache-free.
What if I don't like the course?
We offer a 30-day money-back guarantee, so if you're not satisfied with the course, you can request a refund within 30 days of purchase byΒ sending us a message.
What is included in the course?
This course includes 6 complete modules. It has 37 videos, totaling 2hrs and 28 mins. Youβll have access to every lesson video, textual lesson content, downloadable project code files, interactive IDE, and AI Tutor.
What are there prerequisites for this course?
This course assumes you have a basic understand of JavaScript and Node.js.
How long will it take to complete the course?
The course offers flexibility, allowing you to learn at your own pace. Start, stop, re-watch anytime. Itβs expected that youβd spend approximately 5-7 hours going through the entire course materials.
Can I access the course on my mobile device?.
Yes, the course is fully responsive and can be accessed on your mobile device.
Is there a certificate upon completion of the course?
Yes, you can get a certificate by sending us a message.
Can I ask questions during the course?
Yes, you can ask questions in the comments section of each lesson, and our team will respond as quickly as possible. You can also ask us questions anytime through the community driven Discord channel.
Can I download the course videos?
No, the course videos cannot be downloaded, but they can be accessed online at any time.
What is the price of the course?
The course is currently priced at $39 USD. Alternatively, you can access the complete course as part of the "newline Pro subscription", which costs $30/month.
How is this course different from other content available on automated testing?
There's a fundamental difference between this course and courses you can find on open courseware platforms like EDX and Coursera or even Udemy.
While some platforms may focus on stacking hours upon hours of the same regurgitated content, going over just the theory and documentation, we remove all the fluff.
We go straight to the point and show you exactly what you need to know so that you're ready and confident to tackle real-world project in just one afternoon.
We get practical and show you real-life scenarios and examples on how to and when to use Mocks, Spies, and Stubs. You will not only finish this course faster, but when you're done, you'll also have real-world experience of testing JavaScript applications, which will make you feel confident when testing your own projects.
Finally, we show you how to design, code, and test an easily testable application. This approach provides a holistic view of software design and enables you to get rid of testing headaches in a way that adds value and improves your application.