gpt4 book ai didi

sails.js - 如何使用 Jest 而不是 Mocha 测试 Sails.js 应用程序?

转载 作者:行者123 更新时间:2023-12-02 17:17:59 24 4
gpt4 key购买 nike

documentation for Sails 0.12.11解释了如何使用 Mocha 框架设置测试。我想使用 Jest 来做到这一点。

我尝试对 bootstrap.test.js 使用相同的代码,但将 before 替换为 beforeAllafterafterAll;将 this.timeout(5000) 替换为 jasmine.DEFAULT_TIMEOUT_INTERVAL = 5000。因为 Jest 期望文件中至少有一个测试,所以我在那里做了一个虚拟测试以确保它没有报错。

然后,在另一个文件 (some.test.js) 中,我尝试引用我创建的一个虚拟服务,看看它是否有效。使用 Mocha,任何 Sails 服务都应该默认可用,无需任何 require 语句。

it('should call the dummy service fine', () => {
expect(DummyService.doSomething()).toBe('ok');
});

在使用 jest tests/* 运行测试时,我遇到了以下日志:

Sails console.error using Jest

此外,虚拟服务测试失败,因为它表示未定义。

 FAIL  tests/some.test.js
● should call the dummy service fine

ReferenceError: DummyService is not defined

最佳答案

Jest 似乎确实很适合测试风 sails 。

Jest 哲学是让许多测试以独立状态同时运行,这意味着 jest 无法使用全局设置文件。

将 jest 用于 sails 意味着:

  • 每次测试启动一个 sails 实例,如果您有很多测试,这可能会占用大量内存。

  • 自定义其 orm(水线),以便它为每个测试实例使用数据库的随机文件以实现干净状态。

现在您可能会争辩说 sails 做错了,可以从初创公司开始制作,以支持那种 Jest 测试推广。

关于sails.js - 如何使用 Jest 而不是 Mocha 测试 Sails.js 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45150945/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com