This document introduces testing JavaScript code with Jasmine. It discusses that JavaScript should be tested like production code to allow changing, fixing, cleaning, and refactoring code without fear of breaking things. Tests should be fast, independent, repeatable, self-validating by passing or failing, and timely by writing tests before production code. An example is given of writing a failing test for a buggy random die rolling function, running the test to see it fail, fixing the bug, and adding more tests for documentation and confidence in changes.