次のように、ターミナルからテストを実行して、より説明的なエラーメッセージが表示されるかどうかを試します。
ng test -sm=false
あなたのテストでは、あなたは置き換えることができます
it('should...')
と
fit('should...')
これで、fitの前のテストのみが実行されます。テストの実行後にブラウザを開いたままにするには、次のようにテストを実行します。
ng test -sm=false --single-run false
個人的に、私はこのエラーに2回遭遇しました。どちらも、fixture.detectChanges()を呼び出したときにのみトリガーされました。
最初の時間は、私は私の.htmlファイルに、より安全に、文字列の補間を使用して、それを解決しました。
安全でない例:
<p>{{user.firstName}}</p>
Safe(r)の例(疑問符に注意):
<p>{{user?.firstName}}</p>
プロパティバインディングについても同様です。
<p [innerText]="user?.firstName"></p>
二時間、私は自分の.htmlファイルにDatePipeを使用していたが、私は上でそれを使用することをモックプロパティは、日付はなかったです。
.htmlファイル:
<p>{{startDate | date: 'dd-MM-yyyy'}}</p>
.ts(モックデータ)ファイル(間違っています):
let startDate = 'blablah';
.ts(モックデータ)ファイル(正しい):
let startDate = '2018-01-26';