2014-11-24 2 views
0

Мои тесты мокки работают нормально. Но на travis никаких тестов не выполняется, все, что я вижу, это «0 pass».Почему Mocha не работает на travis

У меня есть простой .travis.yml

language: node_js 
node_js: 
    - "0.10" 

и scripts часть моего package.json настроен как этот

"scripts": { 
    "test": "./node_modules/.bin/mocha" 
} 

Если вам нужно больше информации о проекте вы можете проверить https://github.com/theblacksmith/typescript-compiler

Предлагаем вашему вниманию travis страница: https://travis-ci.org/theblacksmith/typescript-compiler

+0

SO редакционной практика ** ** требуют, что вы поместите кода, который имеет отношение к вашему вопросу внутри самого вопроса. Ссылки на предоставление ** дополнительной ** информации разрешены при условии, что они ** не ** заменяют код, относящийся к вашему вопросу. Если у вас слишком много кода, это знак того, что вы должны создать [mcve] (http://stackoverflow.com/help/mcve). – Louis

+1

@Louis Насколько я знаю, соответствующий код есть. Это настройка, требуемая Трэвисом для запуска моих тестов. Я действительно нашел проблему, это была «структурная» проблема. – svallory

ответ

0

Вместо того, чтобы создавать свои файлы .ts на номер .js, вы можете указать mocha --compilers option. Для этого нужно сначала добавить typescript-require module к вашим devDependencies:

npm install typescript-require --save-dev 

Тогда вы будете иметь возможность использовать его в качестве .ts компилятора:

"scripts": { 
    "test": "./node_modules/.bin/mocha --compilers ts:typescript-require" 
} 
+0

Гораздо лучше! Благодаря! – svallory

0

Проблема заключалась в том, что я использовал TypeScript и не настраивал процесс сборки для компиляции тестов в js перед запуском mocha. Поэтому, если вы используете какой-либо транспилер, убедитесь, что вы сконфигурировали сборку для преобразования их в js. Вот окончательный код конфигурации

.travis.yml

language: node_js 

node_js: 
    - "0.10" 

before_script: 
    - make build 

Makefile

build: 
    @echo " Building..." 
    @cp src/typescript/bin/lib.* lib/ 
    @node ./src/typescript/bin/tsc.js -m commonjs -t ES5 src/index.ts --out index.js 
    @echo " Done!" 

.PHONY: build 

package.json (сценарии сессия)

"scripts": { 
    "build": "make build", 
    "test": "node ./src/typescript/bin/tsc.js -m commonjs -t ES5 test/*.ts && ./node_modules/mocha/bin/mocha" 
} 
Смежные вопросы