About This Course

Jasmine is an open-source behavior-driven development framework used in testing code written with JavaScript. It does not require a DOM. And it has a clean, obvious human-readable syntax so that developers can easily write tests.

The Testing AngularJS with Jasmine training course explores how to use Jasmine to test AngularJS-based applications. The course reviews the Jasmine testing lifecycle, and identifies the testing areas associated with AngularJS. It also teaches how to implement tests, utilize using spies and mocks, and test controllers, filters, directives and services independently.

Request More Info About This Course

Course Category


This is a one-day, hands-on course.

Skill Level

What Happy Developers Say

The instructor did a good job of adjusting content to meet different skill levels.
Developer, Intuit
The instructor was very knowledgeable, making it easy to ask questions and provided good conversation about the topic at hand.
dell  logoWeb Developer, DELL
The instructor demonstrated strong broad knowledge as well as technical in-depth when appropriate
Engineer, Starbucks
I liked that we could determine what to learn, no time was wasted.
Javascript Developer, RetailMeNot
I had trouble understanding a certain concept, and told the instructor that I just didn't get it. While the class was busy with an exercise, he sat down with me, gave me material to read, and made sure I understood it before I moved on. I really appreciated that.
JavaScript Developer, PayPal
The instructor has a great attitude and pacing. Amazing how much he knows about JS!
Junior JavaScript Developer, Macy's


  • Identify the testing areas associated with AngularJS.
  • Create Angular Mocks using ngmock to inject and mock Angular services into unit tests.
  • Independently test controllers, filters, directives, and services.


Advanced JavaScript developers experienced with both Angular and Jasmine.

Course Outline

  • Core Jasmine Testing Concepts
    • Unit Tests
    • Stubs, Spies, Mocks and Other Test Doubles
    • What, When and How Much to Test
    • BDD/TDD Overview
  • Mocks
    • Angular Mocks library
    • Dependency Injection
    • Fake HTTP Back-end Requests with ‘$httpBackend’
    • Jasmine Spies
  • Writing Effective Unit Tests
    • Controllers
    • Filters
    • Directives
    • Services Factories
    • Templates & Routes
    • Events
    • Karma Automated Tests
  • Protractor End-To-End
    • Protractor & Selenium WebDriver
    • Protractor Configuration
    • Using ‘element’ & ‘by’
    • Finding Page Objects
    • Utilizing Promises
  • Advanced Topic Conversations
    • Continuous integration
    • Code coverage
    • Remote/Distributed testing
Request More Info About This Course

Instructors Who Teach This Course



Craig recently released the book, The JavaScript Framework Guide: AngularJS, Backbone, and Ember. Craig has been a guest on the Hanselminutes and JavaScript Jabber podcasts. He’s an avid blogger, and several of his articles have been published in Peter Cooper’s poplular “JavaScript Weekly” newsletter. He also has his own podcast, “The Front-End Developer’s Cast”.

Craig has been a developer f... read more



Eric is a professional trainer and software developer who loves learning new things, sharing what he learns, and helping clients to solve business problems. He holds a BS in Computer Science from the Virginia Military Institute, and numerous software certifications to include the Microsoft Certified Professional Developer certification.

Eric has extensive experience providing customized trai... read more



Kito D. Mann is the Principal Consultant at Virtua, Inc., specializing in enterprise application architecture, training, development, and mentoring with JavaServer Faces, HTML5, Web Components, portlets, Liferay, and Java EE technologies. He is also the editor-in-chief of JSFCentral.com (www.jsfcentral.com), co-host of the Enterprise Java Newscast (https://www.enterprisejavanews.com), and the a... read more



Pete has been doing professional software development since 2001. His experience includes the full spectrum of businesses from large Fortune-500 Enterprises through growing mid-sized companies, down to brand new startups with a handful of founders. He has developed web-based business applications of many flavors, enterprise data center management software, social media applications, industrial ... read more

Who Takes This Training?

Learn More About This Course