在jQuery QUnit中如何从“equal()”声明中获取断言结果?

问题描述:

我有与Math.floor((Math.random() * 9) + 1);工作的一些功能,然后我用一个for像其它逻辑中对它们进行测试:在jQuery QUnit中如何从“equal()”声明中获取断言结果?

test("getRandomNumber(anyNumber) should return a number between 1..anyNumber", function() { 
    var anyNumber, result; 

    for (var i = 0; i <= 100; i++) { 
     anyNumber = Math.floor((Math.random() * 9) + 1); 
     result = getRandomNumber(anyNumber); 

     equal((0 < result && result < (anyNumber + 1)), true); 
    } 
}); 

我想从equal断言得到的结果,如果一个断言失败,没有按“T需要留在循环,如:

test("getRandomNumber(anyNumber) should return a number between 1..anyNumber", function() { 
    var anyNumber, result; 

    for (var i = 0; i <= 100; i++) { 
     anyNumber = Math.floor((Math.random() * 9) + 1); 
     result = getRandomNumber(anyNumber); 

     if (!equal((0 < result && result < (anyNumber + 1)), true)); 
      break; 
    } 
}); 

只要将它分配给一个变量,并检查。

var result = 0 < result && result < anyNumber + 1; 

equal(result, true); 

if (! result) { 
    break; 
}