當在模板內部有一個帶有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