高效的JavaScript代碼單元測試方法(6)

發表于:2013-01-11來源:web開發社區作者:Hazem Saleh點擊數: 標簽:JavaScript
19 document.getElementById( usernameMessage ).innerHTML); 20 assertEquals ( Password is not validated correctly! , This field is required , 21 document.getElementById( passwordMessage ).innerHTML); 22
19     document.getElementById("usernameMessage").innerHTML);
20     assertEquals ("Password is not validated correctly!", "This field is required"
21     document.getElementById("passwordMessage").innerHTML);    
22 };

  ApplicationUtilTest 對象通過 JsTestDriver TestCase 對象創建。如果您熟悉 JUnit 框架,那么您肯定熟悉 setUp 和 testXXX 方法。setUp方法用于初始化測試用例。對于本例,我使用該方法來聲明一個 HTML 片段,該片段將用于其他測試用例方法。

  DOC 注釋是一個 JsTestDriver 慣用語,可以用于輕松聲明一個 HTML 片段。

  在 testValidateLoginFormBothEmpty 方法中,創建了一個 ApplicationUtil 對象,并在測試用例方法中使用該對象。然后,代碼通過檢索用戶名和密碼的 DOM 元素并將它們的值設置為空值來模擬輸入空用戶名和密碼??梢哉{用 validateLoginForm 方法來執行實際表單驗證。最后,將調用 assertEquals 來確保 usernameMessage 和 passwordMessage span 元素中的消息是正確的,即:This field is required。

  在 JsTestDriver 中,可以使用以下構件:

  fail("msg"):表明測試一定會失敗,消息參數將顯示為一條錯誤消息。

  assertTrue("msg", actual):斷定實際參數正確。否則,消息參數將顯示為一條錯誤消息。

  assertFalse("msg", actual):斷定實際參數錯誤。否則,消息參數將顯示為一條錯誤消息。

  assertSame("msg", expected, actual):斷定實際參數與預期參數相同。否則,消息參數將顯示為一條錯誤消息。

  assertNotSame("msg", expected, actual):斷定實際參數與預期參數不相同。否則,消息參數將顯示為一條錯誤消息。

  assertNull("msg", actual):斷定參數為空。否則,消息參數將顯示為一條錯誤消息。

  assertNotNull("msg", actual):斷定實際參數不為空。否則,消息參數將顯示為一條錯誤消息。

  其他方法的代碼包含其他測試用例。清單 4 顯示了測試用例對象的完整代碼。

  清單 4. ApplicationUtil 對象完整代碼

  查看源代碼

打印幫助
01 ApplicationUtilTest = TestCase ("ApplicationUtilTest");
02  
03 ApplicationUtilTest.prototype.setUp = function () {
04 /*:DOC += <FORM action=""><table><tr><td>Username</td><td>
05 <input type="text" id="username"/></td><td><span id="usernameMessage">
06 </span></td></tr><tr><td>Password</td><td>

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97