我有获得 3 个参数的函数.我想检查这个函数没有抛出错误.我做了这样的事情:
I have function that gets 3 arguments. I want to check that this function not throwing an error. I did something like this:
expect(myFunc).not.toThrow();
问题是 myFunc 需要获取参数.如何发送参数?
The problem is myFunc need to get arguments. How can I send the arguments?
P.S 我试图传递它的参数,但我得到错误 myFunc(arg1, arg2, arg3) 不是一个函数.
P.S I tried to pass it argument but I got error that myFunc(arg1, arg2, arg3) is not a function.
toThrow 匹配器需要将函数作为参数传递给 expect,这样你就可以简单地包装你的函数调用在匿名函数中:
toThrow matcher requires function to be passed as argument to expect so you can simply wrap your function call in anonymous function:
expect(function() {
myFunc(arg1, arg2, arg3);
}).not.toThrow();
您也可以使用 绑定创建函数的新版本",在调用时将传递提供的参数:
You can also use bind to create new 'version' of your function that when called will be passed provided arguments:
expect(myFunc.bind(null, arg1, arg2, arg3)).not.toThrow();
这篇关于期望不要抛出带参数的函数 - Jasmine的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
在 javascript 认为文档“准备好"之前,如何让How can I get my jasmine tests fixtures to load before the javascript considers the document to be quot;readyquot;?(在 javascript 认为文档“准备好
jasmine 运行和等待实际上是做什么的?What do jasmine runs and waitsFor actually do?(jasmine 运行和等待实际上是做什么的?)
如何提供模拟文件来更改 <input type='filHow to provide mock files to change event of lt;input type=#39;file#39;gt; for unit testing(如何提供模拟文件来更改 lt;input type=filegt; 的事
如何使用 Jasmine 对链式方法进行单元测试How to unit test a chained method using Jasmine(如何使用 Jasmine 对链式方法进行单元测试)
如何将 $rootScope 注入 AngularJS 单元测试?How do I inject $rootScope into an AngularJS unit test?(如何将 $rootScope 注入 AngularJS 单元测试?)
Jasmine - 如何监视函数中的函数调用?Jasmine - How to spy on a function call within a function?(Jasmine - 如何监视函数中的函数调用?)