Expect not toThrow function with arguments - Jasmine(期望不要抛出带参数的函数 - Jasmine)
问题描述
我有获得 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的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:期望不要抛出带参数的函数 - Jasmine


基础教程推荐
- 响应更改 div 大小保持纵横比 2022-01-01
- 悬停时滑动输入并停留几秒钟 2022-01-01
- 动态更新多个选择框 2022-01-01
- Karma-Jasmine:如何正确监视 Modal? 2022-01-01
- 在for循环中使用setTimeout 2022-01-01
- 有没有办法使用OpenLayers更改OpenStreetMap中某些要素 2022-09-06
- 在 JS 中获取客户端时区(不是 GMT 偏移量) 2022-01-01
- 当用户滚动离开时如何暂停 youtube 嵌入 2022-01-01
- 我什么时候应该在导入时使用方括号 2022-01-01
- 角度Apollo设置WatchQuery结果为可用变量 2022-01-01