【问题标题】:How can I prevent Jest from running async tests concurrently?如何防止 Jest 同时运行异步测试?
【发布时间】:2022-11-09 15:56:03
【问题描述】:

我正在针对数据库编写一系列测试。所有测试都采用以下形式:

test("Name", async ()=>{
    // I do not call done(). I didn't think I had to anymore,
    // and I get type errors if I do.
});

不幸的是,这会导致并发问题。我不确定这是否取决于数据库上的后台任务,或者 Jest 同时运行测试。单独运行时测试工作正常,所以我知道某种并发是问题所在。

我怎样才能绝对确保 Jest 一次运行这些异步测试?

【问题讨论】:

    标签: asynchronous jestjs ts-jest


    【解决方案1】:

    在 Jest 中,单个文件中的测试按照出现的顺序连续运行。但是,多个文件中的测试同时运行。要禁用同时在多个文件中运行测试,请在 jest 命令中使用 CLI 选项 --runInBand

    例如:

    jest --runInBand
    

    如果您使用 npm run test 之类的脚本来运行测试,则将 --runInBand 附加到 package.json 文件中的关联命令中。

    【讨论】:

      猜你喜欢
      • 2023-04-06
      • 2020-11-18
      • 2011-03-22
      • 1970-01-01
      • 1970-01-01
      • 2018-03-24
      • 2017-04-18
      • 1970-01-01
      • 2020-03-15
      相关资源
      最近更新 更多