[英]How to use asserts in callback function javascript
我在測試用例中有以下代碼:
flickrJson.prototype.testFlickrPhotoSearch = function() {
var wrongName = "googday";
var key = "3f807259749363aaa29c76012fa93945";
flickrPhotoSearch(wrongName, key, 1, handleData);
}
和handleData
函數:
var handleData = function(photoUrl)
{
if (photoUrl.stat)
{
if (photoUrl.stat === "ok")
{
assertEquals(1,2);
}
}
}
我想失敗這個測試用例。 但是當我在handleData
函數中編寫assert時,它不起作用。
對於這樣的情況,我發現最好的方法是將回調中的變量設置為一些有意義的值(或者值 - 也許一個意味着好,另一個失敗),然后在測試的主體中等待變量被設置(包括超時,因此如果永遠不設置變量,測試將失敗)然后一旦測試知道變量被設置 - 斷言它具有預期值。
這不是JavaScript或任何特定單元測試庫特有的問題; 但這是測試異步代碼時固有的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.