2014-02-27 33 views
0

我在IRC上問過這個問題並沒有得到太多的迴應,所以我想我會在這裏問它。在EmberJS中測試一個動作的結果

本質上,我試圖使用Ember測試幫助者測試一個動作的結果,但是我的斷言發生得太快,事實上該動作處理程序甚至不會被調用!

這裏是一個工作JSBin:http://emberjs.jsbin.com/vobegeta/11/edit

我說工作,但當然測試的一個失敗,但它應該通過。這是來自我自己的應用程序的位的子集,其中此係統在非測試模式下工作。

p.s.打開開發者控制檯,當事件實際觸發時你應該看到控制檯日誌。

+0

我們可以關閉或刪除這個問題嗎?這與Ember沒有什麼關係,因爲解決方案只是在你的示例代碼中確定拼寫錯誤。 –

+0

類型的部分不是最重要的東西,我認爲這將是有用的,讓人們知道,以確保他們點擊正確的元素 –

+0

我仍然沒有看到如何特定於Ember.js。無論代碼生成哪些元素,都需要單擊正確的元素來觸發單擊處理程序,以測試元素上的所有事件。這個問題至少應該修改並重新提出。 –

回答

2

2個小錯誤:

  • 錯字在App.ChatsControler = ...(應該是App.ChatsController,雙l
  • 爲點擊鏈接的正確選擇是.chats-filter-pills li:contains('Missed') a,不是li本身,作爲動作處理程序註冊在<a>元素上。

有一個很好的黑客! :)