macOSでのdocker mhart/Alpine-node:8の実行
nodejs(6.10.3-r0)(18/18)yarn 0.24.6 jest 20.0.4
ただし、コードを実行するときに__tests __/index.test.jsファイルがあります
node_modules/.bin/jest --watchAll
以下の出力が得られます
テストが見つかりませんでした
/usr/src/app
5個のファイルがチェックされました。
testMatch:/ __ tests __ //*。js?(x)、** /?(*。)(spec | test).js?(x)-1マッチ
testPathIgnorePatterns:/ node_modules /、/ src、src-0件一致
パターン: ""-0件一致
パッケージ番号を何度も再インストールしましたが、役に立ちませんでした。
出力には、testMatch
が1 match
、これはあなたの__tests__/index.test.js
ファイル。 testPathIgnorePatterns
がテストスイートを無視しているようです。 No tests found In /usr/src/app
は、Jestが/usr/src/app
、およびtestPathIgnorePatterns: /node_modules/,/src,src
は、Jestが/src
ディレクトリ。
Jestをポイントして、__tests__/index.test.js
ファイルが/ srcディレクトリ外にある場合、またはtestPathIgnorePatterns
が/ srcディレクトリを無視しないようにします。
testsフォルダー内のすべてのテストを実行する場合は、次のjest __tests__ --watch
次のようなファイル構造がある場合
myFolder
│ myFile1.js
│ myFile2.js
│ ...
│
└───__tests__
myFile1.spec.js
myFile2.spec.js
...
次に、jest.config.js
にtestMatch
プロパティの次のパターンが必要です。
testMatch: ['**/__tests__/*.js?(x)'],
jest.config.js
の簡単な例:
const jestConfig = {
verbose: true,
testURL: "http://localhost/",
'transform': {
'^.+\\.jsx?$': 'babel-jest',
},
testMatch: ['**/__tests__/*.js?(x)'],
}
module.exports = jestConfig
Package.jsonには、テストファイルの検索に使用されるパターンがあります。このパターンでは、ファイルの場所に応じて変更したり、グローバルパターンにすることができます。
特定のフォルダーではなく、テストを作成し、命名規則に従います*.test.js
および変更testMatch
"testMatch": [
"<rootDir>/src/**/*.(test).{js,jsx,ts,tsx}",
"<rootDir>/src/**/?(*.)(spec|test).{js,jsx,ts,tsx}"
],
プロジェクトのサブモジュールでテストを実行しようとしたときにこのエラーが発生しました。メインプロジェクトとは別のフォルダーツリーでサブモジュールを分離してテストすることにより、問題を修正しました。
パラメーターなしでjest
を実行してみてください。注意すべき重要な点は、テストファイル名が*.test.js
の規則に従う必要があることです。