2017-01-11 6 views
1

Вот мой package.json:Попадая абсолютно никакого выхода из Шутки при выполнении тестов

"jest": { 
    "cacheDirectory": "/tmp/jestCache", 
    "scriptPreprocessor": "node_modules/babel-jest", 
    "modulePaths": [ 
     "<rootDir>/app/static/react/" 
    ], 
    "moduleDirectories": [ 
     "node_modules", 
     "app/static/react/app" 
    ], 
    "testPathDirs": [ 
     "app/static/react/__tests__" 
    ], 
    "testRegex": "(.*Tests?\\.jsx?)$" 
} 

Когда я бегу jest --verbose, тесты работать, но нет никакого способа сообщить что-либо на стандартный вывод, насколько я могу скажите, кроме как выбросив ошибку. console.log сам не существует. Я использую jest 16.0.2. Я читал, что есть некоторые недавние изменения в области автомикширования и буферизации консоли, но похоже, что я пропустил нечто более фундаментальное.

Испытания в противном случае работают нормально.

Работает на OSX Yosemite, узел 7.4, npm 4.0.5.

ответ

0

Я чувствую, что у вас слишком много настроек, которые переписывают значения по умолчанию. Одна из причин шутки - это то, что она работает из коробки. Сначала я бы обновил до последней версии jest 18.0.1 и babel-jest , а затем попробую с настройкой по умолчанию.

jest: { 

}, 

Поскольку вы используете babel-jest вы не должны указывать его в конфигурации вообще. Джест просто поднимет его. Убедитесь, что у вас есть .babelrc, тем не менее, такой же уровень, что и package.json.

testPathDirs и testRegex по умолчанию ["<rootDir>"] и (/__tests__/.*|(\\.|/)(test|spec))\\.jsx?$, поэтому я думаю, что вам это тоже не нужно. Также moduleDirectories по умолчанию ["node_modules"], так что вы тоже должны быть в порядке.

Что-то еще, что я определенно изменил бы, это путь к вашему источнику. app/static/react/app кажется немного странным для меня (я не уверен, что шутка путается из-за того, что 3 находится внутри вашего пути). Что-то вроде app/static/src/ имеет смысл. Также я бы перенес тесты на app/static/src/__tests__/.

Я знаю, что этот ответ может звучать слишком универсально, но я бы определенно начал с того, что не переопределял конфигурацию по умолчанию.