首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单机版Jasmine vs Karma - Jasmine

单机版Jasmine vs Karma - Jasmine
EN

Stack Overflow用户
提问于 2014-10-17 02:46:38
回答 2查看 2.1K关注 0票数 11

一般来说,我是测试新手,并且一直在自学Jasmine。我正在尝试理解在Karma中运行Jasmine和jQuery-Jasmine与单独运行Jasmine之间的区别。Jasmine的教程没有解决使用Karma时需要进行的调整。

谁能给我解释一下Karma-Jasmine和独立的Jasmine在需求上有什么不同?它是否仍然需要等级库运行器,文件结构是否仍然相同?

我正在测试DOM事件--很多点击处理程序--但我不知道如何模拟它。有人能概述一下基本的概念吗?例如,如果我想在用户单击按钮后检查p元素是否已添加到div中,那么在文件结构和函数中如何工作?

谢谢。

EN

回答 2

Stack Overflow用户

发布于 2014-12-08 13:07:35

Karma和Jasmine的SpecRunner.html都是测试跑步者(又称规范跑步者)。两者之间的区别在于,Karma是一个在浏览器外部运行的应用程序,而SpecRunner是一个普通的超文本标记语言文件,其中包含一堆可以在浏览器中打开的脚本引用。

一个运行在浏览器之外的测试运行程序会给你带来很多好处:

在once

  • automatically

  • 中运行JavaScript

之前,

  • 会在one or multiple browsers中的once
  • automatically run tests on file changes自动运行测试,而无需手动刷新浏览器
  • 文件pre-processing,即
    • 将TypeScript编译为JavaScript

  • file/report generation,,即测试覆盖率reports
  • test framework flexibility
  • easily使用file and folder patterns包含/排除测试和源文件,而不是试图在HTML文件

中纠缠数百个<script>引用。

票数 13
EN

Stack Overflow用户

发布于 2014-12-08 12:35:15

我没有使用过jasmine-jquery,但是对于使用Karma进行的jasmine测试,Karma使用karma.conf.js来发现外部依赖项(比如jasmine-jquery)。尤其是files property。一些很好的例子是here如果您正在使用jasmine的SpecRunner.html运行jasmine测试,则需要确保您使用的任何内容都与SpecRunner.html中的脚本标记相链接。

至于测试点击处理程序,一个不错的选择可能是直接调用点击处理函数。听起来,如果你想要更现实的东西,你离功能测试越来越近了。为此,您可以考虑整合nightmare来自动化用户交互,如点击等。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26411699

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档