【问题标题】:Typescript / Mocha Test Framework: Initialization code to block and wait for a promiseTypescript / Mocha 测试框架:阻塞和等待承诺的初始化代码
【发布时间】:2020-01-03 08:26:51
【问题描述】:

我正在开发一套 API 测试。现在,我相信 Typescript 和 Mocha 是最好的选择。但是,我遇到了一个问题:在 API 测试运行之前,我需要一些初始化代码,这些代码将通过一些外部系统进行身份验证,以创建一些测试装置并进行身份验证。

这需要发生在任何测试开始之前。

我的计划是通过 mocha 来做到这一点,需要 mocha -r initializer.ts src/test/**/*.ts

到目前为止效果很好。但是,我面临的挑战是,我需要在该初始化程序中进行大量 HTTP API 调用。我正在使用一个 API 客户端,它是异步的并使用 Promises。这是个问题,因为我需要确保在 initializer.ts 完成工作之前没有开始测试。

有什么办法(除了繁忙的循环)我可以完成这项工作吗?

【问题讨论】:

    标签: typescript async-await mocha.js


    【解决方案1】:

    根据MochaJS's documentation on hooks

    • 您可以将任何挂钩定义为根级别挂钩。

    您应该利用before() 作为您所面临问题的根级别挂钩。

    在这个钩子中,你可以调用用于身份验证的方法。 Mocha 将等待这个before() 块完成,然后再跳转到实际测试用例的执行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-03
      • 2020-06-29
      • 2018-11-17
      • 2018-09-22
      • 1970-01-01
      • 2021-01-23
      • 2020-02-28
      • 1970-01-01
      相关资源
      最近更新 更多