Unit testing with Jasmine

Post on 25-May-2015

551 views 3 download

Tags:

Transcript of Unit testing with Jasmine

JasmineUnit testing with

Why unit test?

Your probably already doing it (debugging)

Prevents regression/allows REFACTORING

Fastest form of quality feedback Allows you to work on other peoples

code Improves the design of your code Is a form of living documentation

What is a unit?

“The smallest testable part of an application” JavaScript public function === unit

Utility Code Functional Code

How to unit test?

Practical

The good

TDD – test driven development Write a test Run it (it’s red) Write some code Run it (it goes green) Repeat.

The bad

Testing after the fact Boring Harder to write test code Tightly coupled test code Miss ‘conceptual’ errors

The practical

Test during development New features ? Test driven development Bug fixes ? write tests for the unit Before refactor ? write tests before &

modify

End game

Comprehensive suite of tests for your app

Test lines ratio to code @3 : 1 Run on every commit by CI ‘Stop the line’ when a test fails

Jasmine Overview

Behavior driven development (bdd) describe(”your module", function() {

it(”should be unit tested", function() { expect(isUnitTested()).toBe(true); });

});

Live Demo!