我们是否应该在AngularJS项目的Karma单元级别测试中使用CSS

时间:2014-09-22 02:22:44

标签: javascript css angularjs unit-testing karma-runner

说你的Javascript执行一些元素/位置计算,例如在angularjs指令中。

为了测试这个Javascript代码是否适合在karma.conf.js中包含CSS?

我看到一些受欢迎的项目确实包含了css文件。

e.g。 ng-grid项目karma.conf.js

'dist/release/ui-grid.css',

问题更多地是针对e2e测试与单元测试的界限。

1 个答案:

答案 0 :(得分:4)

据我了解你的问题,这是我对此的看法 -

单元测试用于检查特定源代码的功能。

有以下方法对功能进行单元测试

  1. 将输入传递给函数并测试输出
  2. 传递输入并测试它操作输入的所有事情(步骤)
  3. 测试它是否调用任何外部函数来获取任何输入&使用存根值作为该外部函数的返回对象/值
  4. 如果指令中的方法正在操作css,那么应该在该方法中添加和删除CSS类,不是吗?因此,在断言中,它只需要检查特定类是否存在。 (在我工作的大多数情况下)

    CSS文件是外部文件,它依赖于javascript源文件&它应该被视为依赖。

    e2e测试就像集成测试一样,以确保所有集成文件是否完美地协同工作。因此,如果我们需要测试CSS更改,我们应该检查e2e。

    Here是关于MiškoHevery的单元测试的有趣话题。它与CSS无关,但通常是单元测试&关于处理依赖性(17:50)