Глобальная ошибка EmberJS при запуске тестов

Я пытаюсь интегрировать автоматическое тестирование с помощью Ember Testing.

Приложение нормально работает в браузере, без каких-либо ошибок. Я пытался просто запустить

ember test

в командной строке, но получаю кучу глобальных ошибок и все тесты не проходят.

Это ошибки, которые я получаю:

not ok 1 PhantomJS 2.1 - Global error: SyntaxError: Unexpected token ',' at http://localhost:4302/assets/vendor.js, line 145617

not ok 2 PhantomJS 2.1 - Global error: Error: Could not find module ember-metal/core required by: ember-testing/index at http://localhost:4302/assets/test-support.js, line 62

not ok 3 PhantomJS 2.1 - Global error: ReferenceError: Can't find variable: define at http://localhost:4302/assets/tests.js, line 1

...

Когда я запускаю тесты в браузере, я не получаю синтаксическую ошибку (первая выше), первая ошибка

Uncaught Error: Could not find module `analogue/resolver` imported from `analogue/tests/helpers/resolver`

Это не имеет для меня смысла, так как я не должен редактировать vendor.js и модули, которые, по его словам, не могут быть найдены. Любые идеи?


person roca323    schedule 20.07.2016    source источник
comment
Какую версию Ember вы используете?   -  person dustinfarris    schedule 21.07.2016
comment
У вас установлены все предварительные требования? В основном фантомы   -  person Patsy Issa    schedule 21.07.2016
comment
Вы пробовали запускать тесты в браузере с флагом -s и видеть консоль браузера? Иногда встречаются ошибки, которые легко понять там   -  person GUL    schedule 21.07.2016
comment
я использую следующие версии: ember-cli: 2.4.3 node: 4.4.2 bower: 1.7.9 phantomjs: 2.1.1 git: 1.7.1   -  person roca323    schedule 21.07.2016


Ответы (2)


В случае, если кто-то еще (например, я) окажется здесь с похожей проблемой.

В моем случае список ошибок всегда начинался со случайной ошибки SyntaxError (иногда около '(' или '!'). Фактическая строка, на которую ссылались, обычно даже не содержала этих символов.

Решение для меня состояло в том, чтобы понизить версию phantomjs с версии 2.1 до версии 1.9.

npm install -g [email protected]

(используйте nvm или nave, чтобы упростить себе жизнь в таких случаях)

person Ivo van der Wijk    schedule 04.10.2016

В моем случае мне просто нужна была новая установка PhantomJS.

npm uninstall phantomjs -g
npm install phantomjs -g
person Stéphane Bruckert    schedule 16.05.2017