用户登录

现在我要测试一个方法在特定的情况下出现的异常。比如一个 engine 方法,表示汽车引擎,如果传递给它的燃料不是汽油,就会抛出一个异常。

添加一个测试 .. 描述一下 ... 给汽车引擎加水是不能接受的事情 .. 使用一个 expect .. 用一个匿名函数 .. 里面执行一下 demo 的 engine 方法,给它一个 water 参数 .. to throw .. 如果给 engine 方法传递的参数的值不是汽油,就会出现异常,这个异常就是 not accept ..

运行一下测试 .. 提示 engine 还没有定义 .. 再去定义一下这个方法 ... 名字是 engine .. 再运行一下测试 .. 出现的是一个 AssertionError ,提示期待的函数要抛出一个异常,但是现在并没有 ..

回到这个方法 .. 给它一个参数,名字是 fuel ,表示燃料 .. 然后判断一下 .. 如果 fuel 不是 gas 的话 .. 就抛出一个异常 ..

保存 ... 再运行一下测试 ..

这次测试就会通过,在我们的测试里,给 engine 的 fuel 参数的值是 water ,所以 engine 方法就会抛出一个异常 .. 内容就是 not accept ..

这个测试还有另外一种写法 ... expect(demo.engine.bind(demo, 'water')).to.throw('not accept') .. 再运行一下 ...

同样可以通过测试 ...

测试方法的异常《 Node.js:测试 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点