Есть ли файл .mocha, в котором я могу указать значения по умолчанию, такие как --no-colors?

81

Я хотел бы установить некоторые значения по умолчанию для мокко, не вводя их каждый раз. Ищет ли mocha файл конфигурации / точечный файл где угодно, как ищет jshint и ищет .jshintrcnpm package.json?

Макандре
источник
1
Принятый ответ устарел. Я предлагаю принять новый ( stackoverflow.com/a/54804446/1740079 ), чтобы больше людей не использовали старый подход.
nicooga

Ответы:

91

Да. Вы можете создать файл ./test/mocha.optsи указать в нем --no-colors.

См. Mocha.opts на Mocha Doc для получения дополнительной информации.

zs2020
источник
4
Это устарело. См. Ответ @ migg здесь .
Кэти Килиан
47

По умолчанию это ./test/mocha.opts. Вы можете передать собственный путь с --optsпараметром:

mocha --opts ./mocha.opts

Полезно, если вы храните тесты не в test/папке, а, например, рядом с файлами кода.

Кажется, что любое имя и расширение работают, так что вы можете сделать это даже, mocha --opts .mocharcесли хотите, чтобы оно хорошо сочеталось .jshintrc, .babelrcи тому подобное.

болтовня
источник
2
Это (или, по крайней мере, было) очень непонятная функция. Я давно отказался от надежды на такое, и благодарю вас за то, что вы указали, что это возможно сейчас. :)
DBrown
6
БЛАГОДАРЮ ВАС! Тесты действительно должны быть рядом с файлами. Местность важна!
Байрон Уитлок,
1
Возможно ли, чтобы содержимое файла было JSON?
Джаред Дайкстра
Не похоже. Интерфейс командной строки разбивает содержимое на пробелы, а затем анализирует его с помощью commanderмодуля. commanderПарсер ожидает строковый массив. mochaисточник: github.com/nishigori/mocha/blob/… - commanderисточник: github.com/tj/commander.js/blob/…
gabssnake
1
Вы можете запустить mochaсценарий и передать содержимое файла JSON. См .: github.com/mochajs/mocha/wiki/…
gabssnake
25

В mocha 6+ mocha.optsбыл изменен на, legacyи новое место для определения вашей конфигурации - это .mocharcфайл, который может иметь разные форматы (JSON, YAML, JS), как описано в документации, или конфигурацию JSON, добавленную к ключу package.jsonusing mocha.

Указание собственного пути к конфигурации mocha выполняется с использованием, --config <file>но mocha использует любой .mocharc.*файл по умолчанию в порядке, описанном в документации (JS, YAML, YML, JSON), а также автоматически использует mochaключ from package.jsonс более низким приоритетом, чем данный файл конфигурации.

миг
источник
Пример файла .mocharc.js находится здесь: github.com/mochajs/mocha/blob/master/example/config/.mocharc.js (и в этом каталоге есть и другие форматы).
Peter W