当在模板内部有一个带有ng-click属性的按钮时,我应该测试实际采取的动作的效果(单击)还是附加到ng -click属性,函数调用?Ng-click - 如何对行为进行单元测试
换句话说,对于一个指令,有这样的一个模板:
<div>
<button ng-click="game.start()">start</button>
</div>
我应该考什么点击做或做什么game.start功能?
我知道后来函数game.start可以更改为另一个。此外,可以删除ng-click,并以不同的方式捕获点击事件。
用triggerHandler('click')进行单元测试很诱人,但是指令的模板也可以改变。这意味着我需要对DOM节点进行一些“证明”访问,即通过id属性。
为了进行单元测试,我应该在节点上附加id属性吗?还是应该对问题采取不同的解决方法?
那么不会测试点击与game.start函数是一样的吗? – Aaron 2015-04-03 20:01:01
嗯,是的,没有。现在是,但假设我想稍后重构代码,并且我的game.start函数更改为例如game.init。在这样的情况下,我不得不重写我的测试规范。在编写行为测试时,我根本不想这样做。 – 2015-04-04 07:17:47