小编Mik*_*ird的帖子

使用setInterval测试函数时,Mocha和Chai测试失败

我是TDD的新手,并与Mocha和Chai合作.我创建了一个在值增加时传递的测试,但是当该增加放在setInterval中时,它会失败.此代码的目标是让某些内容在屏幕上移动.

function startMovingThing(){
    var position = setInterval(function() {
        moveThing(10);
    }, 100);
}

function moveThing(number){
    thing.position += number;
    thingOnScreen.style.left = thing.position + 'px';
}
Run Code Online (Sandbox Code Playgroud)

测试:

describe('Thing', function() {

    it('should increase position', function(){
        assert.increases(startMovingThing, thing, 'position');
    });

});
Run Code Online (Sandbox Code Playgroud)

如何通过此测试(或测试应该是什么)?

我不希望moveThing()超出间隔,因为如果间隔被清除并且函数被调用,那么事物就不应该移动.

javascript tdd mocha.js chai

3
推荐指数
1
解决办法
1983
查看次数

标签 统计

chai ×1

javascript ×1

mocha.js ×1

tdd ×1