gpt4 book ai didi

javascript - 测试对象的函数是否已在 Jest 中的另一个函数内调用

转载 作者:行者123 更新时间:2023-12-02 22:36:38 25 4
gpt4 key购买 nike

我的代码看起来有点像这样:

Class A :{
Object foo = new foo;
function (){
...
let var = this.foo.bar()
...
}

我想 Jest 测试一下 foo.bar() 是否已被调用。我尝试过

barSpy = jest.spyOn(function, 'foo.bar');

但它不起作用,有人可以指导我使用良好的语法吗?

最佳答案

jest.spyOn 的参数是包含要监视的函数的对象,以及要监视的函数的名称(请参阅: https://jestjs.io/docs/en/jest-object.html#jestspyonobject-methodname )。使用上面给定的语法很难说,但是如果 foo 可用作 A 实例上的属性(对于此示例,假设您的实例名为 a),则 a.foo 是对象,'bar' 是函数名称。

这里有一些代码可以更好地说明:

class A {
constructor() {
this.foo = new foo();
}

function myFunction() {
...
this.foo.bar();
....
}
}

...

let a = new A();
let barSpy = jest.spyOn(a.foo, 'bar');

关于javascript - 测试对象的函数是否已在 Jest 中的另一个函数内调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58719613/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com