我正在对我的Angular应用程序进行测试:
ng test
这是我的html文件(page-not-found.component.html):
<menu></menu>
<div>
<h4>
ERROR 404 - PÁGINA NO ENCONTRADA
</h4>
</div>
当我运行测试时,组件会给我错误。
这是文件规范(page-not-found.component.spec.ts)
import { MenuComponent } from '../menu/menu.component';
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ PageNotFoundComponent, MenuComponent ]
})
.compileComponents();
}));
这是组件代码(pàge-not-found.component.ts)
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-page-not-found',
templateUrl: './page-not-found.component.html',
styleUrls: ['./page-not-found.component.css']
})
export class PageNotFoundComponent implements OnInit {
constructor() { }
ngOnInit() {
}
}
这是错误:
Error: No provider for ActivatedRoute!
你告诉我这个问题吗?感谢
答案 0 :(得分:2)
您需要在Testbed中为ActivatedRoute提供提供程序。例如
TestBed.configureTestingModule({
declarations: [ PageNotFoundComponent, MenuComponent ],
providers: [
{provide: ActivatedRoute, useValue: activatedRoute}, // using a mock
]
})
那个menucomponent是否需要在你未找到的组件中?