QUnit - Cuộc gọi không đồng bộ
Đối với mọi hoạt động không đồng bộ trong QUnit.test() gọi lại, sử dụng assert.async(), trả về một hàm "xong" sẽ được gọi khi hoạt động đã hoàn thành. khẳng định.async () chấp nhận số lượng cuộc gọi như một tham số. Lệnh gọi lại được trả về từ khẳng định.async () sẽ tạo ra một Lỗi, nếu nó được gọi nhiều hơn số cuộc gọi được chấp nhận, nếu được cung cấp. Mỗidone()cuộc gọi cộng vào số cuộc gọi. Sau khi hoàn thành mỗi cuộc gọi, quá trình kiểm tra sẽ được thực hiện.
<html>
<head>
<meta charset = "utf-8">
<title>QUnit basic example</title>
<link rel = "stylesheet" href = "https://code.jquery.com/qunit/qunit-1.22.0.css">
<script src = "https://code.jquery.com/qunit/qunit-1.22.0.js"></script>
</head>
<body>
<div id = "qunit"></div>
<div id = "qunit-fixture"></div>
<script>
QUnit.test( "multiple call test()", function( assert ) {
var done = assert.async( 3 );
setTimeout(function() {
assert.ok( true, "first callback." );
done();
}, 500 );
setTimeout(function() {
assert.ok( true, "second callback." );
done();
}, 500 );
setTimeout(function() {
assert.ok( true, "third callback." );
done();
}, 500 );
});
</script>
</body>
</html>
Xác minh đầu ra
Bạn sẽ thấy kết quả sau: