网站搜索

mocha.js - Mocha TypeScript 错误 “this.timeout 不是一个函数” 当没有使用箭头函数时


我尝试用 mocha 创建一个有超时的测试。然而,我收到一个错误 TypeError: this.timeout 不是一个函数。

这似乎是一个容易解决的错误。但是当我搜索这个错误时,我总是找到的解决方案是:不要使用箭头函数。不幸的是,这里似乎并不是问题所在。

我的简化测试:

import 'mocha';
import 'ts-mockito';

describe('Function', function () {

    it('function', function (done: MochaDone) {
        this.timeout(5);
    });
});

答案#1

我使用了另一种方法,使用了注释

@suite(timeout(3000), slow(1000))
export class MainTest {

    @test async Test1() {
        ...
    }
}

如在仓库 mocha-ts 中所述。