jestjs - beforeAll 和写在代码顶部有什么区别?
问题描述
在 Jest 和其他测试框架中?写 beforeAll 有什么意义?
以下链接没有帮助:
@Before、@BeforeClass、@BeforeEach 和 @BeforeAll 之间的区别
beforeAll(() => server.listen());
上面的行被放置在我正在检查的代码库的全局范围内。
如果我按如下方式重写它会发生什么变化?
server.listen()
解决方案
当您有需要运行的异步函数(async/promise)时,如果没有样板代码,它们可能无法在测试开始之前完成,通过使用 before all 或 after all,您可以确保异步函数调用在开始之前解析。
此外,使用类似beforeAll
或afterAll
启用一次性设置/拆卸功能的方法来调用。如果这些失败(抛出异常),则框架知道所有后续测试都将失败并且不运行它们。
您可以在此处阅读有关设置/拆卸方法的更多信息。
推荐阅读
- unity3d - 我可以制作更新PC版构建游戏吗?(我使用Unity)
- database - 从头开始创建数据库连接
- java - ConcurrentModificationError Java,else if 语句和 for each 循环(我不知道也不能使用迭代器)
- swift - 动画和键盘关闭后,动画图像移动
- jenkins - Jenkins Post 读取文件内容并与 archiveArtifacts 一起使用
- graphql - 如何使用 GraphQL 上的自定义字段查询?
- php - 插入批处理,如果 Codeigniter 3 HMVC 中的重复键更新
- vagrant - 使用 vagrant 时如何查看使用 virtualbox 设置的接口
- android - task.getResult() 正在抛出 java.lang.ClassCastException
- php - php mysqli 代码添加超过 100 个联系人我的代码显示错误