Jestの設定
Jestの哲学はデフォルトでうまく動作することですが、時にはより細かい設定が必要になることもあります。
設定は、専用の JavaScript、TypeScript、または JSON ファイルで定義することをおすすめします。 ファイル名が jest.config.js|ts|mjs|cjs|json
の場合、ファイルは自動的に発見されます。 --config
フラグを使用すると、ファイルに明示的なパスを渡すことができます。
note
出力される構成は、常に JSON 形式でシリアライズ可能でなければならないことに注意してください。
設定ファイルは、次のようにオブジェクトをエクスポートするだけです。
- JavaScript
- TypeScript
/** @type {import('jest').Config} */
const config = {
verbose: true,
};
module.exports = config;
import type {Config} from 'jest';
const config: Config = {
verbose: true,
};
export default config;
または、オブジェクトを返す関数をエクスポートします。
- JavaScript
- TypeScript
/** @returns {Promise<import('jest').Config>} */
module.exports = async () => {
return {
verbose: true,
};
};
import type {Config} from 'jest';
export default async (): Promise<Config> => {
return {
verbose: true,
};
};
tip
TypeScript 設定ファイルを読み込むために、Jest は ts-node
を必要とします。 このパッケージがプロジェクトにインストールされていることを確認してください。
設定は JSON ファイルにプレーンオブジェクトとして保存することもできます。
jest.config.json
{
"bail": 1,
"verbose": true
}
その他には、Jest の設定をプロジェクトの package.json
の "jest"
キーで定義することもできます。
package.json
{
"name": "my-project",
"jest": {
"verbose": true
}
}
オプション
info
Jest のデフォルトを jest-config
から取得し、次のように必要に応じて拡張できます。
- JavaScript
- TypeScript
const {defaults} = require('jest-config');
/** @type {import('jest').Config} */
const config = {
moduleFileExtensions: [...defaults.moduleFileExtensions, 'mts', 'cts'],
};
module.exports = config;
import type {Config} from 'jest';
import {defaults} from 'jest-config';
const config: Config = {
moduleFileExtensions: [...defaults.moduleFileExtensions, 'mts'],
};
export default config;