4个JS单元测试框架分享
作者:网络转载 发布时间:[ 2016/1/11 13:25:45 ] 推荐标签:单元测试 软件测试
单元测试在后台开发中非常流行和普及,比如JAVA开发者的JUnit等,而在前端开发中则使用的非常少。究其原因,主要是单元测试更适用于逻辑代码的测试,这对于JAVA等后台编程语言来说测试起来非常方便,但是前端开发很多时候要要UI打交道,UI相关的代码不是不可以进行单元测试,但的确很麻烦,比起逻辑代码来说困难多了,这导致了单元测试在前端开发没有普及起来。
但是随着单元测试的普及,尤其是敏捷开发的推动,涌现了许多的JavaScript单元测试框架,如QUnit、Jasmine等。所有的这些框架基本上都能对Javascript代码进行很好的测试,当然UI部分的代码测试一样比较麻烦,但是我们可以通过精心构造我们的测试代码来测试部分UI代码。但是每个框架都不是的,它们都有各自擅长的领域,下面选取了几个具有代表性的框架进行介绍。
Cucumber:行为驱动开发工具
Cucumber是一款富有盛名的BDD(行为驱动开发)框架,特别是在Ruby 社区,它有着很高的知名度,然而大家可能不了解的是,Cucumber通过cucumber-jvm很好地支持了jvm平台上的各类语言,包括Java、Clojure、Scala、Groovy 等等。同时Cucumbe还能够理解用普通语言描述的测试用例的支持行为驱动开发(BDD)的自动化测试工具,用Ruby编写并支持Java和·Net等多种开发语言。
Jasmine:行为驱动测试框架
Jasmine是一个有名的javascript单元测试框架,它是独立的行为驱动开发框架,提供了对JavaScript开发者来说相对容易使用的测试语法,可以帮助程序员轻松写出自己的单元测试代码。
Jasmine是基于行为驱动开发实现的测试框架,它的语法非常贴近自然语言,简单明了,容易理解。不仅如此,Jasmine还能很方便的和Ant/Maven等进行集成进行自动化测试,也可以方便和Jekins等持续集成工具进行集成,可以生成测试结果的XMl文档。同时Jasmine还有丰富的API,也支持用户扩展到它的API上。Jasmine不仅支持在浏览器中的测试,还支持在Rhino和node.js等后端测试。
Mocha:功能丰富的JavaScript测试框架
Mocha是一个简单、灵活有趣的JavaScript 测试框架,用于Node.js和浏览器上的JavaScript应用测试。Mocha是具有丰富特性的JavaScript测试框架,可以运行在Node.js和浏览器中,使得异步测试更简单、更有趣。Mocha可以持续运行测试,支持灵活又准确的报告,当映射到未捕获异常时转到正确的测试用例。
不仅如此,Mocha还具有以下特点:
支持简单异步,包括 promises
提供javascript API来运行测试
non-ttys自动检测和禁用颜色
支持异步测试超时
支持node debugger
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11