簡體   English   中英

如何在回調函數javascript中使用斷言

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM