我正在嘗試對CoffeeScript/JavaScript與JsTestDriver實施非常基本的單元測試。我有兩個文件:在JsTestDriver中設置咖啡腳本單元測試
1)的lib/Greeter.coffee
greet = (name) ->
"Hello #{name}"
2)的lib/GreeterTest.coffee
tests = {
"Test 1": -> assertEquals("Hello World!", greet "World")
}
TestCase("Test for introducing the test framework", tests)
我jsTestDriver.conf定義他們的路線與行:- lib/*.js
但是,執行測試時,我得到:Total 0 tests (Passed 0; Fails: 0; Errors: 0)
我相信,測試可以定位,因爲插入明顯的程序錯誤會導致檢測到具體文件中的錯誤。還插入警報調用導致預期的行爲:在瀏覽器被捕獲我看到警報消息框
我錯過了什麼嗎?怎麼能這樣的東西被調試?
什麼工作,雖然是這樣的:
TestCase("Test case 1", {
testGreet: ->
greeter = new Greeter
assertEquals("Hello World!", greeter.greet "World")
})
和
class @Greeter
constructor: ->
greet: (name) ->
return "Hello #{name}!"
如果這兩個文件駐留在同一文件夾,你可以刪除@
你可能是對的,我向我的問題添加了一個可能的解決方案。測試函數以「test」開始 –
因此,如果'testGreet:'工作但TestGreet:沒有,您應該將我的答案標記爲正確。 –
不要急於閱讀答案和接受它在stackoverflow之間的時間差距持續的討論:-) –