12 款 JS 代码测试必备工具(翻译)


Posted in Javascript onDecember 13, 2016

每天都会产生新的代码、用户测试工具和框架。下面的列表列出了可以完成各种测试需求的代码工具。你应该调查研究一下,看这些工具是否适用于你的技术栈和技术需求。

01. Jasmine

12 款 JS 代码测试必备工具(翻译)

Jasmine 是一个行为驱动的测试开发框架,用于对 JavaScript 代码进行测试。它不依赖其它任何 JavaScript 框架,也不需要 DOM。它的语法简洁、明确,写测试非常容易。

02. Mocha

Mocha 是一个功能丰富的 JavaScript 测试框架,既运行于 Node.js 环境中,也可以运行于浏览器环境中。Mocha 以串行方式运行测试,能做出灵活而准确的报告,也能将测试中未捕捉的异常映射到正确的测试用例。

12 款 JS 代码测试必备工具(翻译)

03. Chai

Chai 是个支持 BDD / TDD 的库,可用于 node 和浏览器,可配合任何 JavaScript 测试框架使用。

04. QUnit

12 款 JS 代码测试必备工具(翻译)

QUnit 是个功能强大又易于使用的 JavaScript 单元测试框架。jQuery、jQuery UI 和 jQuey Mobile 项目都使用这个框架,它能测试普通的 JavaScript 代码。

05. Sinon

Sinon.JS 为 JavaScript 提供了独立的 spies、stubs 和 mocks [译者注:Spy、Stub 和 Mock 都是测试专用名词,Stub 常被翻译为桩,spies 是 Spy 的复数形式,是一种可以监视方法、调用和参数的技术]。它不依赖任何东西,可以配合任何单元测试框架工作。

06. Karma

Karma 是针对连通浏览器的一个框架无关测试运行器。每一个测试结果对应每个浏览器,它的测试和显示都是通过命令行暴露给开发者的,这样他们就可以看到浏览器测试的通过或失败。

07. Selenium

12 款 JS 代码测试必备工具(翻译)

Selenium 有一个简单的目标:就是自动化浏览器。它主要用于自动化测试 web 应用程序,但是只是很简单地考虑到了基于网络的管理任务。

08. WebdriverIO

WebdriverIO 允许用户仅添加几行代码就可以控制浏览器或移动应用程序,使测试代码更简单、简洁、易读。集成的 TestRunner 同样允许你以同步的方式调用异步命令,这样你不需要关心如何处理 Promise 以避免竞态条件。此外,它取消了所有的繁琐的设置工作,并且会为您管理的 Selenium 会话。

09. Nightwatch

12 款 JS 代码测试必备工具(翻译)

Nightwatch.js 是一个易于使用的 Node.js,它是为基于浏览器的 app 和网站设计的终端到终端(E2E)的测试方法。它使用强大的 W3C WebDriver API ,用于在 DOM 元素上执行命令和断言。

10. PhantomCSS

PhantomCSS 获得 CasperJS 捕获的屏幕截图,并使用 Resemble.js 将其与基准图进行对比,以测试 RGB 像素差异。 PhantomCSS 然后生成图像差异对比,用于帮助您找到原因。

11. PhantomFlow

PhantomFlow 使用决策树提供 UI 测试方案。针对 PhantomJS, CasperJS 和 PhantomCSS 的 NodeJS 包装器—— PhantomFlow 能够流畅地在代码中描述用户流程,同时生成用于可视化的结构化树数据。

12. Percy.io

 Percy 提供关于视觉变化的迭代及快速反馈,带来了所谓的连续视觉集成。它是通过下面方式实现的:运行测试套件,获取 DOM 快照并上传到 Percy 服务,最终在浏览器中渲染之。

英文原文:12 must-have code testing tools 译文:https://www.oschina.net/translate/12-must-have-user-testing-tools

Javascript 相关文章推荐
JavaScript格式化数字的函数代码
Nov 30 Javascript
JQuery对checkbox操作 (循环获取)
May 20 Javascript
Javascript 面向对象(二)封装代码
May 23 Javascript
JavaScript事件委托的技术原理探讨示例
Apr 17 Javascript
Jquery实现的角色左右选择特效
May 21 Javascript
jQuery标签替换函数replaceWith()的使用例子
Aug 28 Javascript
js中的json对象详细介绍
Oct 29 Javascript
JavaScript子窗口调用父窗口变量和函数的方法
Oct 09 Javascript
bootstrap实现图片自动轮播
Dec 21 Javascript
前端开发之CSS原理详解
Mar 11 Javascript
Vuex之理解Store的用法
Apr 19 Javascript
Vuex的各个模块封装的实现
Jun 05 Javascript
使用BootStrap实现悬浮窗口的效果
Dec 13 #Javascript
关于微信jssdk实现多图片上传的一点心得分享
Dec 13 #Javascript
微信页面倒计时代码(解决safari不兼容date的问题)
Dec 13 #Javascript
JS实现微信弹出搜索框 多条件查询功能
Dec 13 #Javascript
根据输入邮箱号跳转到相应登录地址的解决方法
Dec 13 #Javascript
JavaScript实现倒计时跳转页面功能【实用】
Dec 13 #Javascript
Javascript实现倒计时(防页面刷新)实例
Dec 13 #Javascript
You might like
PHP表单递交控件名称含有点号(.)会被转化为下划线(_)的处理方法
2013/01/06 PHP
php中使用临时表查询数据的一个例子
2013/02/03 PHP
深入了解PHP中的Array数组和foreach
2016/11/06 PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
2017/08/29 PHP
PHP实现微信红包金额拆分试玩的算法示例
2018/04/07 PHP
一个JavaScript继承的实现
2006/10/24 Javascript
js类 from qq
2006/11/13 Javascript
javascript 模拟点击广告
2010/01/02 Javascript
JavaScript的类型简单说明
2010/09/03 Javascript
js 延迟加载 改变JS的位置加快网页加载速度
2012/12/11 Javascript
javascript学习(一)构建自己的JS库
2013/01/02 Javascript
ExpressJS入门实例
2015/01/14 Javascript
JS+CSS模拟可以无刷新显示内容的留言板实例
2015/03/03 Javascript
JS实现控制表格只显示行边框或者只显示列边框的方法
2015/03/31 Javascript
JavaScript中数组继承的简单示例
2015/07/29 Javascript
JS实现黑色大气的二级导航菜单效果
2015/09/18 Javascript
浅谈Angular中ngModel的$render
2016/10/24 Javascript
原生js实现打字动画游戏
2017/02/04 Javascript
js 监控iframe URL的变化实例代码
2017/07/12 Javascript
vue项目中api接口管理总结
2018/04/20 Javascript
Vue.js的动态组件模板的实现
2018/11/26 Javascript
js实现掷骰子小游戏
2019/10/24 Javascript
使用Vant完成通知栏Notify的提示操作
2020/11/11 Javascript
python实现保存网页到本地示例
2014/03/16 Python
python中sleep函数用法实例分析
2015/04/29 Python
django 创建过滤器的实例详解
2017/08/14 Python
Python利用字典将两个通讯录文本合并为一个文本实例
2018/01/16 Python
Python批量安装卸载1000个apk的方法
2020/04/10 Python
Python OrderedDict字典排序方法详解
2020/05/21 Python
python中添加模块导入路径的方法
2021/02/03 Python
巴西在线鞋店:Shoestock
2017/10/28 全球购物
Android笔试题总结
2014/11/29 面试题
数控专业大学毕业生职业规划范文
2014/02/06 职场文书
我为党旗添光彩演讲稿
2014/09/13 职场文书
公务员个人考察材料
2014/12/23 职场文书
导游词之舟山普陀山
2019/11/06 职场文书