2017-11-09 16 views
0

create-react-appボイラープレートには、サーバーコードとクライアントコードの両方が同じpackage.jsonファイルを使用しています。クライアントユニットテスト、サーバユニットテスト、サーバ統合テストという3つの独立したJestコンフィグを用意したいと思います。残念ながら、私はこれを動作させることができませんでした。私の計画では、各オプションにyarn runコマンドを設定してから、--config CLIオプションを使用してjestに設定を指定しました。しかし、その後、私はthis roadblockに遭遇しましたが、これはv20とv21の両方で発生し、処理が進んでいません。基本的には、人々は--configを使用して設定ファイルを読むことで問題を報告しており、フォールバックは設定package.jsonを使用することです。残念ながら、単一の設定ファイルしか指定できません。1つのプロジェクト内で複数のJest設定をどのように設定しますか?

誰でもこれを動作させることができました。もしそうなら、あなたの設定(jestなどのバージョン)を記述することができます。私はv19にダウングレードする必要があるかどうか疑問に思っています。あるいは、私は間違ったアプローチをしていますか?

答えて

2

私は冗談で、関連するテストコードが見つかりました: https://github.com/facebook/jest/blob/master/integration_tests/tests/multi_project_runner.test.js

どうやら冗談の新進気鋭の機能が--projectsオプションです。ここで機能を記述するポストだ

module.exports = { 
    name: 'client', 
    displayName: 'client', 

    // NOTE: if you don't set this correctly then when you reference 
    // it later in a path string you'll get a confusing error message. 
    // It says something like' Module <rootDir>/config/polyfills.js in 
    // the setupFiles option was not found.' 
    rootDir: './../../', 

    testMatch: [ 
    "<rootDir>/src/server/**/__tests__/*.unit.{js,jsx}", 
    "<rootDir>/src/server/**/__tests__/unit/*.{js,jsx}" 
    ], 

    // etc... 
}; 

https://facebook.github.io/jest/blog/2017/05/06/jest-20-delightful-testing-multi-project-runner.html

"jest": { 
    "projects": [ 
    "src/client/jest.config.js", 
    "src/server/unit.jest.config.js", 
    "src/server/int.jest.config.js", 
    ] 
} 

そしてsrc/client/jest.config.jsであなたは、特定の構成を定義することができます:あなたはpackage.jsonファイルでこのような何かを行うことができます

関連する問題