我有一个简单的单元测试,它是在 Angular 6 组件上使用 karma/jasmine 完成的。从我收集的复数课程和文档来看,我似乎正在正确地模拟我的组件所需的服务,但是当调用该方法从模拟服务返回数据时,我收到错误消息,指出属性订阅未定义。
我的“it”函数是空的,因为一旦在 beforeEach 方法中构造了组件,测试就会失败。组件的构造函数调用了我试图测试的方法。请在下面查看我的代码。
import { TestBed, async, ComponentFixture } from '@angular/core/testing';
import { MainComponent } from './main.component';
import { DataService } from '../services/data.service';
import { of } from 'rxjs';
import { NO_ERRORS_SCHEMA } from "@angular/core";
describe('Should construct MainComponent', () => {
let mainComponent: MainComponent;
let EMPLOYEES;
let fixture: ComponentFixture<MainComponent>;
let mockDataService;
beforeEach(() => {
EMPLOYEES = [
{
"PrismEmployeeID": 1,
"FirstName": "install2",
"LastName": "account",
"Initials": "IA ",
"NickName": "",
"SSN": "",
"DateOfBirth": "09/26/2014",
"HireDate": …Run Code Online (Sandbox Code Playgroud)