角度2.0.0では、私はルータを使用するコンポーネントをユニットテストしています。しかし、私は '提供されたパラメータが呼び出しターゲットの署名と一致しません。'エラー。 spec.tsのVisualスタジオコードでは、赤でハイライト表示された新しいRouter()です角度2 - ルータでのユニットテスト
正しい構文が何であるか教えていただけたらと感謝しています。前もって感謝します。私のコードは次のとおりです。
spec.ts
import { TestBed, async } from '@angular/core/testing';
import { NavToolComponent } from './nav-tool.component';
import { ComponentComm } from '../../shared/component-comm.service';
import { Router } from '@angular/router';
describe('Component: NavTool',() => {
it('should create an instance',() => {
let component = new NavToolComponent(new ComponentComm(), new Router());
expect(component).toBeTruthy();
});
});
コンポーネントのコンストラクタ
constructor(private componentComm: ComponentComm, private router: Router) {}
おかげで、これは動作します!また、https://angular.io/guide/testing#testbedgetで推奨されているように、 'router = TestBed.get(Router)'を使用して、コンポーネントを任意のものにキャストするのではなく、フィクスチャと一緒に変数に保存します。 –
あなたは - 記載されているように動作します:) – ICantSeeSharp
ありがとう、これは私の問題を解決しました:ルータを嘲笑するときに未定義のプロパティ 'ルート'を読み取ることができません。 –