0
Webプロジェクトでは、ES6モジュールはまだ使用されていません。その代わりに、私たちはTypeScriptソースを翻訳し、それらをすべて一緒に連結します。ES6モジュールを使用しないjestの使用
これはブラウザとKarmaとWallabyJS(設定ファイルにfiles
オプションを設定すること)でうまくいきます。
私たちの1500テストは実行に時間がかかりますので、私はJestをチェックしたかったのです。しかし、jestがインポートしているタイプを見つけることができないため、テストが失敗します。
例えば、我々はStringUtils
という名前のクラスを持っているし、次のコードのために:
import StringUtils = common.utils.StringUtils;
class Person {
private _name: string;
address(): string {
return StringUtils.buildAddress(this);
}
}
我々はで失敗:
ReferenceError: common is not defined
はロードする何のファイル冗談言うする方法はあります(テストを実行する前に、カルマとウォラビーと同じように)
あなたがあなたのpackage.json
のもの、または置く
setupTestFrameworkScriptFileまたは[にSetupFiles]([setupTestFrameworkScriptFile](それはあなたのテストの実行を開始する前に、セットアップいくつかのものができるようになる
https://facebook.github.io/jest/docs/configuration.html#setupFiles]。
を指定することができるはず
実際には動作しません。例えば、jQueryを必要とするモジュールは、ロードされたことを実際に「認識」していません。他のモジュールを見つける。 setupFilesは、グローバルオブジェクトとして 'window'を持たないのでロードされていないようですそれを正しく更新し、他のモジュールはそれらを正しく使用することはできません。 – splintor