Karma - 自定义适配器,具有动态更新的总测试数

时间:2018-01-02 11:52:27

标签: karma-runner

我正在为Karma创建一个自定义适配器。在我查看的其他适配器中(例如karma-mocha),在执行开始时报告测试总数(via info call),对于我的情况,它不能在开始时作为总测试数来完成当时不知道。

我尝试在每个测试套件(发送执行的测试数量)之后调用info方法,但它似乎没有任何效果(看起来它只是更新了整个测试运行的开始)。是否有可能通过其他方法或自定义记者实现?

P.S。我知道在执行每个测试套件后更新测试总数没有多大价值,因为用户在运行之前仍然看不到总测试数。但是,“550的执行550”仍然比“执行550的0”更好。

1 个答案:

答案 0 :(得分:0)

在报告测试结果之前调用info时,看起来Karma会做一些特别的事情。

this.info = function (info) {
    // TODO(vojta): introduce special API for this
    if (!startEmitted && util.isDefined(info.total)) {
        socket.emit('start', info)
        startEmitted = true
    } else {
        socket.emit('info', info)
    }
}

您可以尝试跟踪测试结果/错误,然后在测试运行结束后调用info并使用测试总数,然后再调用resulterror和{分别为{1}}。