Introduction

Testing is a core part of the Ember framework and its development cycle.

Let's assume you are writing an Ember application which will serve as a blog.
This application would likely include models such as user and post. It would
also include interactions such as login and create post. Let's finally
assume that you would like to have automated tests in place for your application.

There are two different classifications of tests that you will need:
Acceptance and Unit.

Acceptance Tests

Acceptance tests are used to test user interaction and application flow. With
the example scenario above, some acceptance tests you might write are:

A user is able to log in via the login form.

A user is able to create a blog post.

A visitor does not have access to the admin panel.

Unit Tests

Unit tests are used to test isolated chunks of functionality, or "units", without
worrying about their dependencies. Some examples of unit tests for the scenario
above might be:

A user has a role

A user has a username

A user has a fullname attribute which is the aggregate of its first and last
names with a space between

A post has a title

A post's title must be no longer than 50 characters

Testing Frameworks

QUnit is the default testing framework for this guide, but others are
supported through third-party addons.

How to Run Your Tests

Run your tests with ember test on the command-line. You can re-run your tests on every file-change with ember test --server. For more details and options, see Ember CLI – Testing and ember help test.

Contributing

The Ember testing guide provides best practices and examples on how to test your
Ember applications. If you find any errors or believe the documentation can be
improved, please feel free to contribute.