Nodejs断言测试

var assert = require(‘assert‘);

/*node中,我们可以使用assert模块来测试代码。
equal()和notEqual()分别作相等性和不等性的判断,
第一个参数是期望值,第二个参数是真实值,第三个参数是异常信息*/

// assert.equal(1,2,[console.log(‘ok‘)]);//期望值和真实值无论相等还是不相等,输出信息,为什么?
// assert.equal(1,2,[‘not equal‘]);//期望值和真实值不相等,抛出异常信息

/*ok()方法是比较真值的简洁方法,相当于是用==比较当前值是否为true。*/

// assert.ok(‘‘,‘w‘);//空格为false
// assert.ok(‘This is a string‘, ‘Strings that are not empty are truthy‘); //true
 assert.ok(0, ‘Zero is not truthy‘);//0为false

// assert.fale(1,2,‘not equal‘,console.log(‘error‘));

/*node提供了对object对象的比较方法deepEqual() 和 notDeepEqual(),
他们采用下面的步骤比较对象,有一个步骤不匹配就抛出异常:
1.采用===比较;
2.比较他们是否是Buffers,如果是则比较长度,接下来每字节每字节的比较;
3.是用==比较;4.最后如果参数是object对象,则比较他们得属性长度和属性值。
可以看的出来,这两个方法性能上可能要差些,所以只有在需要的时候才使用他们。*/

// assert.deepEqual(1,2,[‘not equal‘]);

/*assert.throws(block[, error][, message])
声明一个 block 用来抛出错误(error), error可以是构造函数,正则表达式或其他验证器。*/

// assert.throws(function(){
//   throw new Error(‘message is wrong‘);
// });
// assert.doesNotThrow(function() {
//   throw new Error("I lived in the ocean way before Nemo");
// });

时间: 2024-10-19 00:53:29

Nodejs断言测试的相关文章

nodejs快速测试

对于一些js功能,可以通过nodejs快速搭建测试环境 1.这里我们先通过express脚手架快速搭建一个项目,或者init一个空项目 2.mkdir script 3.这里假设我们的场景是MQTT接收消息并存入数据库(6字段字节数分别为212212) 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566

Nodejs Mocha测试学习

参考大神阮一峰的文章<测试框架 Mocha 实例教程> 目前在使用Nodejs,但写完的程序很容易出错,那怎么办?需要引入单元测试去做基础的测试 目前Nodejs用来做单元测试的工具接触的不多,现在只接触到Mocha,它是用来做单元测试的最好的工具之一. 关于Mocha的基础教程,可以看一下阮一峰老师的博客:测试框架 Mocha 实例教程 =>基本概念: describe():测试区块,一个测试区块应该包含一个或多个测试区块,测试区块也是可以多层嵌套的 it():测试用例,一个测试区块中

Assert断言测试

assert编写代码时,我们总是会做出一些假设,断言就是用于在代码中捕捉这些假设,可以将断言看作是异常处理的一种高级形式.断言表示为一些布尔表达式,程序员相信在程序中的某个特定点该表达式值为真.可以在任何时候启用和禁用断言验证,因此可以在测试时启用断言,而在部署时禁用断言.同样,程序投入运行后,最终用户在遇到问题时可以重新起用断言. 基本解释及物动词 vt.1.断言,声称[+that][O2]She asserted her innocence.她宣称她是清白的.He asserted that

SOAPUI用测试步骤进行断言

soapUI提供两种断言方法:TestSteps中添加断言和Assertion TestStep(仅限PRO版本). Assertion TestStep扩展了断言处理和管理的想法.此功能允许创建简单到复杂的的灵活性断言,可以在测试用例中请求/响应,JMS,JDBC或安全相关活动中断言从项目级别到单个测试阶段的任何属性.此外,断言可以分组并利用布尔逻辑. 1. 添加步骤 右键单击TestCase,然后选择Add Step - > Assertion TestStep打开Assertion Tes

在Nodejs中贯彻单元测试

在团队合作中,你写好了一个函数,供队友使用,跑去跟你的队友说,你传个A值进去,他就会返回B结果了.过了一会,你队友跑过来说,我传个A值却返回C结果,怎么回事?你丫的有没有测试过啊? 大家一起写个项目,难免会有我要写的函数里面依赖别人的函数,但是这个函数到底值不值得信赖?单元测试是衡量代码质量的一重要标准,纵观Github的受欢迎项目,都是有test文件夹,并且buliding-pass的.如果你也为社区贡献过module,想更多人使用的话,加上单元测试吧,让你的module值得别人信赖. 要在N

nodejs单元测试

前言: 之前一直听说过单元测试,但是具体怎么做,也没有深入研究,感觉测试是一件很麻烦的事,花费时间.可能是自己太懒了,一看到测试那么多陌生的东西就不想弄了. 然后一拖再拖,直到最近,换了一家公司,然后求知欲望又燃起来了.所以想吧之前一直不想掌握的技术给掌握了. 目录: 测试框架 断言库 supertest 1.测试框架 nodejs的测试框架用的最多的是mocha.mocha诞生于2011年,是现在最流行的测试框架之一,再浏览器和node环境中都可以使用.它支持多种nodejs的断言库,同时支持

前端测试代码测试

一:前端测试的背景.为什么做测试 1.测试分类 (1).TDD(Test-Driven Development) 测试驱动开发(2).BDD(Behavior Drive Development) 行为驱动开发 它通过用自然语言书写非程序员可读的测试用例扩展了测试驱动开发方法 这让开发者得以把精力集中在代码应该怎么写,而不是技术细节上 - 伪代码(3).DDD(Domain Drive Design) 领域驱动开发 各个层次之间的调用问题 DDD是告诉我们如何做好业务层!并以领域驱动设计思想来选

现代化前端测试

mu --> 目录 1.现代化前端测试模型2.nodejs的断言模块assert3.单元测试断言库 chai4.mocha--JavaScript test framework5.测试的覆盖率--Istanbul, a JavaScript test coverage tool 1.现代化前端测试模型  <--返回目录 前端测试中有两种模型, 金字塔模型与奖杯模型. 1.1 金字塔模型 金字塔模型摘自 Martin Fowler's blog: 金字塔模型自下而上分为单元测试.集成测试.UI

前端测试回顾及我们为什么选择Karma

前端测试,或者UI测试一直是业界一大难题.最近Q.js使用Karma作为测试任务管理工具,本文在回顾前端测试方案的同时,也分析下为什么Q.js选用Karma而不是其他测试框架. 像素级全站对比 曾今有一批人做过这样的UI测试,即最终页面图像是否符合预期,通过图片差异对比来找出可能的问题. 如图所示,所谓像素级站点对比,即利用截屏图像前后对比来找出,站点前后差异,从而发现问题. Q: 为什么需要这种测试呢? A: CSS容易被破坏,在大型响应式重构案例中,像素级全站对比是一个比较好的测试方案. 目