Unit testing your Javascript with jasmine (Udemy.com)
Learn how to unit test your JavaScript using the jasmine framework, from your first test to continuous integration.
Created by: Juan Lizarazo
Last updated November 2020
What you will learn
- Write clean suites, specs and expectations.
- Isolate dependencies on units through test doubles (spies).
- Automate test runs through continuous integration from version control using a headless browser and a test runner.
- Set up jasmine as their unit testing framework from scratch.
- Configure setup and teardown for suites.
- Understand how matchers work in Jasmine.
- Write custom matchers and include them in your project.
- Consume third party matchers.
- Test asynchronous code.
- Run unit tests both from a web browser and from a terminal through a test runner.
- Generate code coverage reports.
- Improve dependency management through a package manager.
How it compares
Against the other 281 rated Udemy courses in Software Testing on CourseDuck:
- Rating4.4 out of 5higher than 35% of them
- Reviews1,209#116 of 282 by number of reviews
- Length5.8 hoursshorter than 57% of them
- Last updatedNovember 2020earlier than 83% of them
Course Description
Jasmine is a behavior-driven development framework for testing JavaScript code. It does not depend on any other JavaScript frameworks. It does not require a Document Object Model (DOM), and it has a clean, obvious syntax so that you can easily write tests.
If you want to stand out as a JavaScript developer, you need to learn how to unit test your code. Jasmine is a great way to do so.
By the end of watching this course, you'll be able to:
Understand what unit testing is and why it is important in today's market.
Set up jasmine from scratch.
Write clean and concise suites, specs, and specifications.
Understand and use all of the out-of-the-box jasmine matchers, create your custom ones, and include them in your project.
Isolate dependencies through test-doubles, known as spies in Jasmine, for true unit testing.
Unit test asynchronous code.
Setup test reports and continuous integration from version control to automate your test runs.
Apply best practices when structuring your tests.
With this course, you'll get downloadable source code, slides, and section notes.
PREREQUISITES
This is a beginner and intermediate course.
No previous unit testing experience is needed, just basic familiarity with JavaScript, HTML, and CSS (just optional when building our course project).
You don't need previous experience with a testing framework at all. We've got you covered!
---
Promo video music license:
Adventures by A Himitsu - Creative Commons — Attribution 3.0 Unported— CC BY 3.0 Music released by Argofox - Music provided by Audio Library
Instructor Details
- 4.4 Rating
1,209 Reviews
Juan Lizarazo
Hi! I am Juan Lizarazo, your Udemy Instructor!
I've been programming since I was ten years old, and I have been teaching for over a decade.
I am a Software Architect in Salt Lake City, Utah, focused on web app development, cloud, leadership, team scaling, and distributed applications.
I am also a software engineering instructor, teaching computer science topics like data structures and algorithms to students all over the US.
I also contribute to open-source, talk at Conferences, answer questions on stack overflow, and sometimes write.
More Software Testing courses
ZeroToHero TestNG Framework - From Basics to Advanced (2026)
4.9 (828 Reviews)
Provider: Udemy
Time: 6.2h
$59.99
Selenium WebDriver with Java- Basics to Advanced + Framework (2026)
4.9 (620 Reviews)
Provider: Udemy
Time: 35.5h
$84.99
Karate DSL: API Automation and Performance from Zero to Hero (2026)
4.8 (4,652 Reviews)
Provider: Udemy
Time: 7.2h
$10.99
API Testing in detail using Postman - Test Automation (2026)
4.8 (423 Reviews)
Provider: Udemy
Time: 7.8h
$10.99
Quick Introduction to Postman and API Testing for Beginners (2025)
4.7 (23,113 Reviews)
Provider: Udemy
Time: 3.2h
$13.99
Software Testing Masterclass (2026) - From Novice to Expert
4.7 (12,622 Reviews)
Provider: Udemy
Time: 9.9h
$149.99
Reviews
By Luís Marques on 1/11/2021
The content of the course is good, the teacher speaks calmly and clearly. This is a good course to learn Jasmine from scratch. The only thing to improve in my opinion is the CI section: it could have better context explaining what each tool is and why should we use it or at least some links where the student can find that info.
By Jimmy Vales on 7/26/2020
Learning a lot not just about how to set up specs and expectations, but why and how to think about creating tests. The unexpected bonus was getting a review of HTML, CSS, and Javascript at the very beginning by setting up a simple website. Really enjoying the pace and clarity of material, where only several times so far the subject matter has been over my head. Maybe just needs to be revisited and practiced. Subtitles could be useful in some cases, but not an issue 99% of time. I actually am enjoying the accent :D Looking forward to making it through the entire course and finding ways to apply this to projects at work.
By Robert Laing on 7/25/2020
I'm getting the hang of Jasmine, so very happy with the course in that respect. I deducted one star because I felt the intro digressed a bit much into CSS (which taught me stuff I didn't know, but doesn't really belong here), and too much of the JavaScript was pre-coded, losing an opportunity to demonstrate test-first design.
By Timothy Goh on 4/26/2020
Good introduction to cover the basics of Jasmine, starting from the ground up with a barebones project consisting of html and js files without npm. However, some videos are showing their age. For example, a video with instructions to download an external dependency (custom matchers) via a link to a js file, no longer works. I had to spend some time figuring out how to work around the problem. It would be nice if the video had mentioned the workaround to save me the time of troubleshooting the problem. The version of the tool suggested for test coverage, istanbul, is deprecated. It would be nice if the video was updated to teach students how to use the new version of Istanbul. As Github now supports CI/CD via github actions, it would be nice if this was covered instead of introducing another tool, travis CI.
By Ben Smith on 2/20/2019
This is a good course for beginner to learn some basic concepts about unit testing. I personally not like spend some lectures on explain how different API work, I think it is better to teach how to search document. And I think it is better to add some brief lectures to compare Jasmine with other popular testing libraries. I like at the end of each section, there has a summary section.
By Andre Lorch de Oliveira on 2/18/2019
This is hands down the best course on Udemy. I wish all courses were on this pace, slowly showing concepts and picking up from there. I have the feeling that most instructors start with good intentions to show beginners how to use a framework/learn a concept, but after a couple of lessons start rushing off to the end. This is not the case with Juan and Reynaldo. They took the time to explain most of the nooks and crannies of Jasmine. For me with a couple of years working as dev (yes, without tests!) there was a lot of basics, but that didn't bother me at all. You can turn the playback a little bit faster or quick jump the lessons. I would love to see other topics like this from these instructors. The only thing missing for me was a couple of examples how to deal with Test Driven Development. But at least this was also mentioned in the course. Overall kudos to the instructors! Keep on rockin'!
By Yann Chabot on 2/12/2019
Very good course, I do a lot of course on Udemy and too often they either jump from too basic to too technical, this one is not one of those courses. It is really clear, he explains very well the different concept and application with concrete examples. Jasmine is definitely a technology I will be using in my Javascript's application.
By Andrew Lim on 2/2/2019
Picked up this course to fill in the gaps of other online course that rushed through the topic. Juan is very good at taking things slow and showing exactly what is happening and why. He even throws in a few explanations that beginners may not know, just so that you are up to speed with what he wants to teach you. Took me around 2 days to get through the course for what I needed (so far haven't completed the last section), but that is also taking notes and completing all the exercises. You can go through the exercises as he does and if you followed along correctly it will work (I've had other courses that even though they did step-by-step, they left things out, making your files not work). I would recommend to any beginners of Jasmine. :)
By Brant H on 1/10/2019
This course will show you a pretty good overview of the jasmine framework. You will go through the documentation and use all of the common methods on an app you created. I think it's good to learn jasmine on code you are familiar with since writing tests is almost like documenting the code. Even though you are learning by testing vanilla javascript, the concepts are still there and I'm sure will be handy when testing other languages/frameworks. The one thing I had a problem with is not using the es6 functions the whole time, and the async section was somewhat brief. Slightly dated in that sense, but like I said, still handy knowledge for the methods used in Jasmine.
By John Grabner on 1/9/2019
Jasmine sections very good, then all of a sudden karma is introduced and implies the way jasmine used for most of course is not to correct way to use jasmine. Tittle is "Javascript with jasmine" but whole course is javascript in a web browser vs javascript in node. Expected node to be covered too. Spy capabilities of jasmine are impressive and a real surprise (good). People who have not used such test frameworks would expect the value of test frameworks is mostly reporting, so marginal value. Spy capabilities and value of jasmine be introduced up front.
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 88 / 100






