🏆
SWCコンパイラでJestのテストを爆速化する方法
対象読者
- TypeScriptで開発している。
- テスト時間を短縮したい。
- GitHub ActionsなどのCIの実行時間を短くすることでコスト削減したい。
方法
swcをインストールする
npm i -D @swc/core @swc/jest
jestのconfigに設定を追記する
jest.config.js
const swcConfig = {
sourceMaps: true,
module: {
type: 'commonjs',
},
jsc: {
parser: {
syntax: 'typescript',
},
},
}
module.exports = {
roots: ['<rootDir>/src'],
testMatch: [
'**/__tests__/**/*.+(ts|tsx|js)',
'**/?(*.)+(spec|test).+(ts|tsx|js)',
],
transform: {
'^.+\\.(ts|tsx)$': ['@swc/jest', swcConfig],
},
}
テストを実行する
npm run test
めっちゃ早くなった。
参考
以上。
Discussion