Ember.js Testing package was a great addition to the project. It allowed us to have fast specs to guarantee the defined behavior. However, there's no convention on how you should guarantee that your models, the heart of any Ember.js application, are valid in relation to your backend.
Put another way, if you have an User model with a name
attribute, how can you be sure that your backend is still responding with {"user": {"name": "Your Name"}}
? So, even though your acceptance specs pass, you're stubbing out your models with FIXTURES
.
Most people either manually test their apps or create an end-to-end test with the backend server, which is slow as hell (think of Capybara). The good news is that there are conventions for solving this since like forever. One way to guarantee this integrity is via Contract tests (http://martinfowler.com/bliki/IntegrationContractTest.html). Basically, you have a test to guarantee your models are matching your backend.
Using server-side end-to-end tests have many drawbacks,