zoukankan      html  css  js  c++  java
  • Node.js之断言处理

    Node.js之断言处理

    在Node.js中,可以利用assert模块进行断言处理,如果判断错误,则抛出AssertError异常

    1 equal方法与notEqual方法

    equal方法用于判断两个值是否相等

    assert.equal(actual,expected,[message])
    //第一个参数:指定实际值
    第二个参数:指定预期值
    第三个参数:指定自定义异常信息
    如果实际值不等于预期值,抛出AssertionError异常
    

    notEqual方法与equal方法相反,用于判断两个值是否不相等,用法与equal相似:

    assert.notEqual(actual,expected,[message])
    //第一个参数:指定实际值
    第二个参数:指定预期值
    第三个参数:指定自定义异常信息
    如果实际值等于预期值,抛出AssertionError异常
    

    2. strictEqual方法与notStrictEqual方法

    用于判读两个对象的值与类型是否相等

    assert.strictEqual(actual,expected,[message])
    //第一个参数:实际值
    第二个参数:预期值
    第三个参数:制定自定义异常信息
    如果实际值及其数据类型不等于预期值,则抛出AssertionError异常
    

    notStrictEqual方法与strictEqual方法相反,用于判断两个值及其类型是否不相等,用法与strictEqual相似:

    assert.notStrictEqual(actual,expected,[message])
    //第一个参数:实际值
    第二个参数:预期值
    第三个参数:制定自定义异常信息
    如果实际值及其数据类型等于预期值,则抛出AssertionError异常
    

    3. assert方法与ok方法

    ok方法用于判断某个值是否为真,如果为假,则抛出AssertionError异常

    assert.ok(value,[message])
    //第一个参数:指向被判断的对象
    第二个参数自定义异常信息
    

    可以用assert方法代替ok方法:

    assert(value,[message])
    

    4.deepEqual方法与notDeepEqual方法

    用于深层比较

    assert。deepEqual(actual,expected,[message])
    //第一个参数:实际值
    第二个参数:预期值
    第三个参数:自定义异常信息
    如果实际值不等于预期值,则抛出AssertionError异常
    

    比较规则:

    1. 如果两个简单类型比较(字符串、数值、布尔值,null与undefined),则内部使用“=="操作符比较
    2. 如果两个数值比较,用“==”比较
    3. 如果两个对象,则比较值与类型
    4. 如果两个Buffer缓存对象,先比较长度,再逐字比较缓存区内容

    notDeepEqual与deepEqual相反

    5. throws方法与doesNotThrow方法

    throws方法用于执行一个函数中的代码,并判断函数中是否抛出一个异常,如果抛出异常,则不抛出AssertionError异常,如果不抛出异常,则抛出AssertionError异常

    assert.throws(block,[error],[message])
    //第一个参数指定被判断的函数
    第二个参数:布尔值,用于控制是否抛出在第一个参数值函数中指定抛出的异常。如果为true,则不抛出异常,为false抛出异常
    //第三个参数:用于在AssertionError异常中添加一个附加的自定义错误信息
    

    doesNotThrow方法用于执行一个函数中的代码并判断是否不会抛出一个异常,如果为真(函数不抛出异常),则正常执行该函数,如果判断为i假(函数中抛出异常),则抛出该异常或抛出AssertionError异常(根据doesNotThrow第二个参数而定)

    assert.doesNotThrow(block,[error],[message])
    //第一个参数:为一个函数
    //第二个参数:true:抛出AssertionError异常
    			false:抛出函数体中的异常
    //第三个参数:在AssertionError异常中附加自定义错误信息
  • 相关阅读:
    phrase(短语)
    AS3版MP3播放器核心
    内存回收机制
    检测FPS和内存占用
    NetConnection读取asp.net
    基于flash AS3.0 的BASE64编码与解码类
    as3访问WebService,SOAP协议
    六种角度看OCA与OCP、OCM区别
    ORACLE报表触发器
    ORACLE EBS常用表
  • 原文地址:https://www.cnblogs.com/yuanchenghao/p/7434486.html
Copyright © 2011-2022 走看看