如何使用Jest而不是Mocha测试Sails.js应用程序?
说明了如何使用Mocha框架设置测试。我想用笑话来做那件事 我尝试对bootstrap.test.js使用相同的代码,但用beforeAll替换beforeAll,用afterAll替换beforeAll;将this.timeout5000替换为jasmine.DEFAULT\u TIMEOUT\u INTERVAL=5000。因为Jest希望一个文件中至少有一个测试,所以我在那里做了一个虚拟测试,以确保它不会抱怨 然后,在另一个文件some.test.js中,我试图引用我创建的一个虚拟服务,只是为了看看它是否工作。有了摩卡,任何Sails服务在默认情况下都应该可用,无需任何require声明如何使用Jest而不是Mocha测试Sails.js应用程序?,sails.js,jestjs,Sails.js,Jestjs,说明了如何使用Mocha框架设置测试。我想用笑话来做那件事 我尝试对bootstrap.test.js使用相同的代码,但用beforeAll替换beforeAll,用afterAll替换beforeAll;将this.timeout5000替换为jasmine.DEFAULT\u TIMEOUT\u INTERVAL=5000。因为Jest希望一个文件中至少有一个测试,所以我在那里做了一个虚拟测试,以确保它不会抱怨 然后,在另一个文件some.test.js中,我试图引用我创建的一个虚拟服务,只
it('should call the dummy service fine', () => {
expect(DummyService.doSomething()).toBe('ok');
});
在使用jest tests/*运行测试时,我遇到以下日志:
此外,虚拟服务测试失败,因为它说它没有定义
FAIL tests/some.test.js
● should call the dummy service fine
ReferenceError: DummyService is not defined
我希望这仍然是相关的 我不会骗你的。这并不容易。我花了一整天的时间,但毕竟我能够配置 埃斯林特 漂亮的 开玩笑 请检查我的系统中的所有工作方式,如果您有任何疑问,请随时与我联系
我希望这仍然是相关的 我不会骗你的。这并不容易。我花了一整天的时间,但毕竟我能够配置 埃斯林特 漂亮的 开玩笑 请检查我的系统中的所有工作方式,如果您有任何疑问,请随时与我联系
开玩笑似乎很适合测试帆船 Jest的原理是让许多测试与独立状态同时运行,这意味着Jest无法使用全局设置文件 对风帆开玩笑意味着: 在每个测试中启动一个sails实例,如果您有很多测试,那么这个实例可能会占用大量内存 自定义它的orm水线,以便它为每个测试实例的数据库使用一个随机文件来完成干净状态
现在,您可能会争辩说,sails做得不对,可能是从一开始就做的,以支持jest推广的测试。jest似乎非常适合测试sails Jest的原理是让许多测试与独立状态同时运行,这意味着Jest无法使用全局设置文件 对风帆开玩笑意味着: 在每个测试中启动一个sails实例,如果您有很多测试,那么这个实例可能会占用大量内存 自定义它的orm水线,以便它为每个测试实例的数据库使用一个随机文件来完成干净状态
现在,您可能会争辩说,sails做得不对,可能是从初创公司开始制作的,以支持jest promote的测试。有趣的方法。好奇的是:使用setupTestFrameworkScriptFile:/jest/setup.js,帆的升力不是有测试文件那么多吗?那是我的问题。如果我有10个测试文件,它将扬帆10次,这不是我真正想要的…嗨@nbkhope。因此,答案是否定的。它在所有测试之前只运行一次。您是否有任何相关问题?根据官方文档,这是错误的,该模块在每次测试之前运行一些代码来配置或设置测试框架。。爱德华,你说得对。服务器在每次测试之间升降。我为困惑道歉。我添加了一个我认为更适合这个问题的答案。有趣的方法。好奇的是:使用setupTestFrameworkScriptFile:/jest/setup.js,帆的升力不是有测试文件那么多吗?那是我的问题。如果我有10个测试文件,它将扬帆10次,这不是我真正想要的…嗨@nbkhope。因此,答案是否定的。它在所有测试之前只运行一次。您是否有任何相关问题?根据官方文档,这是错误的,该模块在每次测试之前运行一些代码来配置或设置测试框架。。爱德华,你说得对。服务器在每次测试之间升降。我为我的困惑道歉。我添加了一个我认为更适合这个问题的答案。