search

Home  >  Q&A  >  body text

javascript的单元测试工具有哪些?

不知道javascript有没有专门的单元测试工具,尤其是js代码大到一定程度的时候,修改很容易出问题。
所以想通过单元测试工具来解决,不知道有没有推荐几款,说说他们的优劣?

天蓬老师天蓬老师2835 days ago615

reply all(4)I'll reply

  • PHP中文网

    PHP中文网2017-04-10 12:45:26

    Jasmine

    Jasmine官方称其为行为驱动开发测试框架(behavior-driven development framework for testing JavaScript code)。主要的功能有:

    • 基本的测试函数(expect)
    • 将测试函数组成集合进行描述(describe),允许对集合中的测试函数进行同一的操作(Setup,Teardown)
    • 内置丰富的匹配器(Matcher),同时支持自定义匹配器
    • 提供对于函数状态(包括参数,调用,返回情况)的考察(Spy)
    • 提供计时工具(Jasmine.Clock)
    • 支持异步测试
    • 平台无关,可以测试前台页面的Javascript代码和Nodejs代码

    Qunit

    Qunit 是一个非常强大的javascript单元测试框架,可以帮你调试代码。它是由 jQuery团队的成员写的,而且是jQuery的官方测试套装。但QUnit一般是足以测试任何常规javascript代码,它甚至可能通过一些javascript引擎比如Rhino或V8来测试服务器端JavaScript。
    评价:使用方便,界面美观。

    Test.Simple & Test.More

    这个是jQuery之父John Resig在他的著作《Pro Javascript》中推荐的测试框架
    评价:非常容易上手,非常简洁,适合中小型项目快速引入单元测试。

    jsUnit

    系统化的解决方案,基于XNuit规范,如果你会使用jUnit、NUnit等框架,对这个应该会很容易上手,且包括服务器端(Java的)。
    评价:非常全面,专业,适合大型企业级开发。

    相关链接

    Jasmine:https://github.com/pivotal/jasmine
    Qunit:http://qunitjs.com/
    JSUnit:https://github.com/pivotal/jsunit
    Test.Simple & Test.More:http://openjsan.org/doc/t/th/theory/T...

    reply
    0
  • 巴扎黑

    巴扎黑2017-04-10 12:45:26

    我知道一个,http://qunitjs.com,虽然我没有系统用过,但是有两点我还是让我很信任它的:第一它的作者就是jquery的作者,所以品质应该没问题;第二文档写得很详细。

    你可以先去网站看看文档再作判断

    另外js代码大到一定规模,一定要注意遵循良好的代码设计。模块化,单一职责等编写可维护代码的规矩一定要遵守,否则连单元测试的代码你都不好写

    reply
    0
  • PHP中文网

    PHP中文网2017-04-10 12:45:26

    老牌的jsunit
    忘了在哪个框架中见到过用它了,也许是prototype?

    reply
    0
  • 高洛峰

    高洛峰2017-04-10 12:45:26

    怎么能漏掉 Mocha
    https://mochajs.org/

    reply
    0
  • Cancelreply