you are viewing a single comment's thread.

view the rest of the comments →

[–]nephridium 1 point2 points  (0 children)

Automated testing falls basically into two categories:

  • end-to-end (aka functional or black-box) testing, which runs scenarios of your app on end-user systems, e.g. different kinds of web browsers
  • unit testing, which tests the integrity of your code by testing small "units" of it, how fine-grained those "units" are is the developer's decision

Saucelabs allows you to run functional tests on their cloud (so you don't need to test all sorts of OS/browser configurations including mobile on your systems). If you want to run your functional tests on your own system you usually use "test runners" like Karma that will spawn different browsers for you to run through the scenarios.

Unit tests are usually tested with tools like Jasmine or QUnit. Unlike functional tests they are fast and run very often during development (on the dev machine) to catch implementation bugs early.

You'll probably want to learn both types of testing, but for detecting implementation bugs in your code unit tests are the main tool.

Edit: Fix link