角度代码覆盖范围

时间:2017-12-05 07:18:52

标签: angular unit-testing code-coverage

在使用Angular(2,4,5,...)开发应用程序时,人们使用了大量*ngIf="whatever_condition"而不常使用ngSwitch

但是,我还没有看到任何能够提供有关该代码实际测试数量的信息的工具。

显然对于Typescript文件有伊斯坦布尔加载器来获取覆盖范围,但我相信它给出了一个错误的画面,即在视图中有很大一部分逻辑位于没有视图的视图中具有高覆盖率测量..即如果我在Typescript上有90%的分支覆盖率,但在视图中仍有两倍的分支,实际覆盖率可能在45%到90%之间。

是否有任何工具能够测量Angular视图的代码覆盖率并以有意义的方式显示它?

1 个答案:

答案 0 :(得分:0)

我没有查看模板的覆盖范围,但是,您可以查看component-vs unittest。

我通常会做以下事情:

it('',()=>{
  component.whatever_condition = true;
  const el = fixture.debugElement.query(By.css('someElement'));

  fixture.detectChanges();

  expect(el).toBeDefined();
});

我意识到这不会给你报道,但它会为你的模板提供测试。

NB 考虑是否需要进行e2e测试

我希望它有所帮助

相关问题