2017-10-02 12 views
0

私はinitTestEnvironmentを呼び出すことに注意してください(カルマとジャスミンを使用して)を呼び出しますが、それは(console.logで)呼び出されることを確認します。角4ユニットテスト:nullのプロパティ 'injector'を読み取ることができません

私はそれを実行するたびに私が手: TypeError: Cannot read property 'injector' of null

あなたがMyServiceを見ることができるように、上記のエラーは、私が注入しようとしたすべてのサービスで発生することを実証するだけの空のクラスです。

@Injectable() 
export class MyService { 

} 

describe('some tests',() => { 

    beforeEach(() => { 

     TestBed.configureTestingModule({ 
      imports: [ 
       HttpModule, 
       HttpClientModule 
      ], 
      providers: [ 

       MyService 
      ] 
     }); 
    }); 

    it('just a test',() => { 

     TestBed.get(MyService); // this causes the error 
     expect(true).toBeTruthy(); 
    }); 
}); 

この問題の原因と解決方法は何ですか?

私は自分の問題を見ることができません。特に、多くのチュートリアルは全く同じことをしています。

+0

再現できません。https://plnkr.co/edit/G3ihIYvuQ8qFXpUlsBlw?p=preview – yurzui

答えて

0

ok、恐らく少なくともyurzuisのコメントの後には期待されていました。すべてがテスト自体に問題ありませんでした。

しかし、私はスコープ付きパッケージでモノレポを持っており、テストはメインプロジェクト(スコープ付きパッケージ自体からではありません)から実行されます。残念ながら、これらの問題につながる角度パッケージ間のバージョンの不一致がありました。

この問題を未然に防ぐために、テスト設定を改善する必要があります。

関連する問題