可以将Jest用作基于浏览器的测试工具吗?

时间:2017-07-18 15:56:25

标签: jestjs

我已经google了,并且能够理解Jest是用于Javascript代码的开发人员的单元测试工具。我试图理解Jest不是一个基于浏览器的测试工具,类似于selenium,也不是一个功能测试工具。

任何Jest专家都可以为上述内容提供答案。

提前致谢。

gtklanth

2 个答案:

答案 0 :(得分:1)

正如您所提到的,Jest旨在成为一种单元测试工具。通常,您可以为网页的部件/组件编写小型测试。我不完全确定你的意思" 是否可以将Jest用作基于浏览器的测试工具?"但是我发现Jest可以通过两个相关领域接触基于浏览器的测试

  1. 您可以使用虚拟DOM(如JSDOM)渲染组件并在类似于浏览器的环境中测试它们。这些仍然是单元测试,但您可以访问窗口和文档,并可以测试文档点击,窗口导航,聚焦元素等内容。

  2. 您可以在浏览器中调试Jest测试。如果这是您想要的,请关注instructions here。我试过了这个,但它真的很慢,对我来说不是很有用,所以我不推荐它

  3. 可能可能会呈现整个应用程序并使用Jest进行测试,但我也不建议这样做。 Jest测试应该设计为快速运行,并且应该只测试代码的小单元。如果您尝试构建需要很长时间才能运行的测试,那么有一个论点表明您的单元测试将变得无用,开发人员最终将不再运行它们。

    如果您正在寻找启动实际浏览器的测试并像用户一样点击,那么请查看Selenium我认为这是目前最常用的方法

答案 1 :(得分:1)

此npm库可以与您的jest测试集成,以在浏览器中运行它们:): https://www.npmjs.com/package/jest-browser

我不能说它有多好/缺点是什么,但看起来值得一试!