访问在Jasmine中测试中在beforeEach中定义的const

时间:2017-08-22 16:22:03

标签: angular unit-testing jasmine karma-runner

对于给定的代码,如何在test myConst中访问const myTest

describe('HeaderCustomerDetailsComponent child components',() => {
  beforeEach(() => {
    ...
    const myConst = "Something";
  });

  it('myTest', () => {
    expect(myConst).toBeTruthy();
  });
});

1 个答案:

答案 0 :(得分:4)

因为您在myConst方法中定义了beforeEach(...),所以它限制在该范围内。最好的方法是将myConst移出到类级别,然后使用let定义它。

试试这个:

describe('HeaderCustomerDetailsComponent child components',() => {
  let myConst;

  beforeEach(() => {
    ...
    this.myConst = "Something";
  });

  it('myTest', () => {
    expect(this.myConst).toBeTruthy();
  });
});

由于您仍在myConst方法中设置beforeEach(...),因此可以避免测试之间的污染,但您仍应小心。