2010-10-04 50 views
1

我正在運行Rhino,並試圖確定如何在Javascript中執行assert_equals()或其等價物。從Rhino shell中我可以加載qunit,但是我不能創建一個會失敗的斷言。在JavaScript中,你怎麼能斷言兩個項目是平等的?

在Javascript中使用斷言的最簡單方法是什麼?我將在除瀏覽器以外的其他環境中使用Javascript,因此瞭解如何從Rhino shell執行此操作會非常有幫助。

什麼不起作用的例子。

js> load("qunit.js") 
js> equals(5,4,"message") 
js> 
js> 

回答

4

這是非常容易實現的JavaScript時斷言失敗會拋出異常你自己assert()功能。執行documented here是相當簡潔,應該做的工作。

+0

是的。這是一種有效的方法。我只需要創建一個稱爲assert_equal(x,y)的短函數,它在等於時返回true,並在不相等時拋出異常。非常輕的方法。謝謝 – Chris 2010-10-05 01:22:10

+0

我用這種方法創建了'assert_equal(expression,result)'函數。投擲''表達式產生''表達式''',沒有tequal''.. result ..''。''這個消息對我來說比給每個斷言添加自定義消息更好。我找不到使用'eval()'或複製粘貼的東西來包含傳遞給函數的原始表達式的好方法。 – 2011-10-26 16:57:28