Ember cli и тестем

Я новичок в Ember, и я хотел бы запустить простой проект и запустить некоторые интеграционные тесты в Chrome.

Я купил книгу «Разработка Ember.js Edge», в которой они создают приложение ember-trackr, но, поскольку все в мире JS движется быстро, детали, похоже, изменились.

If I:

git clone https://github.com/developing-an-emberjs-edge/ember-trackr
cd ember-trackr
testem

Я получаю сообщение об ошибке:

   Error running before_tests hook                                         
  ┃                                                                        
  ┃before_tests hook: "ember build -c"                                     
  ┃version: 0.0.41                                                         
  ┃You have to be inside an ember-cli project in order to use the build command.

Я не уверен, но думаю, что шаги в http://emberjs.com/guides/testing/integration/ уже позаботились при использовании

ember new <appname>

Итак, если я создам новое приложение и запущу testem:

ember new testem-test
cd testem-test
testem

Я вижу сообщение «ожидание бегунов» в консоли, и хром запускается.

Теперь, если я попытаюсь добавить тривиальный тест (скажем, проверить содержимое страницы на наличие текста, скопированного с http://www.ember-cli.com/#testing) как тесты/test1.js:

 import Ember from "ember";
 import { test } from 'ember-qunit';
 import startApp from 'helpers/start-app';
 var App;

 module('An Integration test', {
   setup: function() {
     App = startApp();
   },
   teardown: function() {
     Ember.run(App, App.destroy);
   }
 });

 test("Page contents", function() {
   expect(2);
   visit('/foos').then(function() {
     equal(find('.foos-list').length, 1, "Page contains list of models");
     equal(find('.foos-list .foo-item').length, 5, "List contains expected number of models");
   });
 });

Если я запускаю «testem», я просто получаю сообщение об ожидании бегунов.

Если я запускаю 'ember test', я получаю:

~/IdeaProjects/spike/testem-test (master) $ ember test
version: 0.0.41
Build failed.
ENOENT, no such file or directory '/Users/paul/IdeaProjects/spike/testem-test/tmp/tree_merger-tmp_dest_dir-2QJNmsEl.tmp/helpers/start-app.js'
File: helpers/start-app.js

Кто-нибудь знает, что мне не хватает?

Кроме того, если это еще не сделано, было бы неплохо обновлять образец приложения ember-trackr с помощью ember-cli, чтобы он работал сразу из коробки — я был бы рад внести свой вклад, если смогу выяснить что его не хватает...

Спасибо.


person prule    schedule 04.09.2014    source источник


Ответы (1)


Что касается первой части вашей проблемы, да, ember-cli изменился, и вам нужно перенести этот проект. Я бы сделал это за 100 наград.

Для второй части вам не нужно создавать тест с нуля:

запустите ember generate acceptance-test test1 и он сделает шаблон за вас.

конкретное сообщение об ошибке можно исправить, обновив эту строку:

import startApp from '../helpers/start-app';

person user3995789    schedule 04.09.2014
comment
Потрясающе, большое спасибо. Я должен был подумать о том, чтобы посмотреть, можно ли сгенерировать тест. Я создал тест и запустил его с помощью «ember test --server». - person prule; 04.09.2014