【node测试系列】几款前端测试断言库(Assertions lib)的选型总结
参考文章 http://blog.lvscar.info/post/...
在编写前端测试代码的过程中, 几乎所有的测试框架都提供了根据功能、模块(module ,spec
)来切分测试用例的设计, 由于测试代码简单,直接,直接反应API
的特点,我们编写测试代码的体验很大程度上取决于所选用的断言库, 以下是我对目前几款主流断言库的选型分析笔记:
better-assert
C-style
TDD
断言库由TJ Holowaychuk 发起
目前Github上的有 : 131 star 14 fork
API 样例
assert('tobi' == user.name)
assert('number' == typeof user.age)
should.js
BDD
风格断言库同样由 TJ Holowaychuk 发起
目前Github上的数据: 384 Star , 200 fork ( TJ放弃维护后由新开发者接手)
API样例
foo.should.be()
bar.should.have()
foo.should.bot.be()
expect.js
追求极简的
BDD
风格断言库基于
should.js
简化目前Github上的数据: 926 star 135 fork
API样例
expect(foo).to.be()
expect(foo).to.eql()
expect(foo).to.be.a()
expect(foo).not.to.be.an()
chai
BDD/TDD
双模 ,同时支持should / expect / assert
三种风格的断言库
强大插件机制chai-webdriver
Github上的数据1559 star 150 fork
API样例:
should style: foo.should.be.a()
expect style: expect(foo).to.be.a() // 近Jasmine风格
assert style: assert.equal(foo, 'bar')
其他
Jasmine.js 测试框架中的断言库十分类似
Chai expect
和expect.js
( Jasmine历史比前两者悠久).assert
风格最保守 ,should
风格需要修改prototype
最为激进。不考虑
Node
环境的话,Jasmine.js
是好选择我目前倾向于
Mocha + Chai
的测试方案
【node测试系列】几款前端测试断言库(Assertions lib)的选型总结相关推荐
- 鼠标垫测试软件,百款鼠标垫测试(项目)
介绍完以上鼠标垫产品,我们使用采用激光引擎和蓝影引擎的鼠标对鼠标垫的做工.手感.耐磨度以及兼容性做了一个简单的测试. 做工:所谓做工就是一款产品在制作过程中体现的质量和水平.从外设发烧友的角度理解,做 ...
- 百度一款前端图片合成工具库MI开源啦!
什么是MI Mi全称mix-img,是一个前端图片合成工具库,它可以将多张图片和文字合成一个全新的图片.作为一个轻量级的图片合成解决方案,Mi支持多张图片并行加载合成,减少图片合成时间,提升前端开发者 ...
- iphone6 续航 测试软件,7款iPhone测试iOS13.6电池续航:结果耗电更严重了?
苹果已经发布iOS13.6正式版,新增特色功能--远程发动汽车,而且还修补了Bug.有果粉甚至调侃,iOS13.6和iPhone都已经有了,就差一部宝马.那么iOS13.6续航表现到底如何呢?今天我们 ...
- 前端测试框架(学习之路)前言
为什么需要单元测试 正确性:测试可以验证代码的正确性,在上线前做到心里有底 自动化:当然手工也可以测试,通过console可以打印出内部信息,但是这是一次性的事情,下次测试还需要从头来过,效率不能得到 ...
- 测试篇二:关于测试(mocha+karma)
断言 node assert assert模块提供了一组简单的断言测试,可用于测试不变量. API文档 断言库 should.js API文档 测试框架(mocha) mocha(摩卡)是运行测试的工 ...
- 【 Apifox】一款前端开发、后端开发、测试人员连连叫好的开发工具
Apifox官网地址:http://apifox.cn/a103abcc 前言 作为一名程序员,除了开发之外最重要的事就是测试了,谈到测试我们避免不了的事就是如何选择测试工具. 在后端开发我们经常配置 ...
- 前端测试框架Jest系列教程 -- Expect(验证)
写在前面 在编写测试时,我们通常需要检查值是否满足某些条件,Jest中提供的expect允许你访问很多"Matchers",这些"匹配器"允许您验证不同的东西. ...
- 测试公开课资料系列02--Postman之chai.js断言应用
前言 如果要挖井,就要挖到水出为止. 明晚公开课给大家讲讲如何用chai.js断言,有用过postman只会右侧点来自动生成断言代码,或在公 司应用postman的朋友们都来听听. 一.ch ...
- 前端测试简述及使用Karma/Mocha实现的集成测试栗子(Travis CI/Coverage)
前端测试 开发类型 TDD (Test Driven Development),测试驱动开发 BDD (Behavior Driven Development),行为驱动开发 // add.js fu ...
最新文章
- PHP date()函数警告: It is not safe to rely on the system解决方法
- “星链”或成美军未来作战理念新载体
- 三层交换机能传递路由吗?_华为ensp三层交换机VLAN配置静态路由互通
- ubuntu突然连不上-调试方式
- 使用docker中的apline部署自己的golang的后端代码(添加制作静态服务器的注意点)...
- 【ClickHouse 技术系列】- ClickHouse 聚合函数和聚合状态
- 四个修改Docker默认存储位置的方法
- 【XSY2718】gift 分数规划 网络流
- 调整Linux磁盘分区大小
- Linux中mongodb定时远程备份
- Opencv_07 图像的像素值统计
- 突发奇想:用单片机开发一款最纯粹的智能水杯方案
- APICloud常用
- win10计算机的管理在哪里打开,Win10磁盘管理器
- c语言指针一步错步步错,一步错步步错,可是到底错在哪里
- czl蒻蒟的OI之路16
- 发布有礼!2015 Autodesk程序商店有奖发布活动拉开序幕
- Android应用开发病虫害识别,基于Android平台的枣虫害识别系统的设计与实现
- 理光Ricoh Aficio MP 2011LD 一体机驱动
- WordPress:自定义头像