我有一个名为NewSchema(ctx contractapi.TransactionContextInterface, groupName string, schemaName string, schemaText string)
的函数,它调用另一个名为SubmittingIdentityHasOU(ctx, 'random_string')
的函数。我正在为NewSchema函数编写单元测试。
我一直在尝试模拟SubmittingIdentityHasOU
的响应,以便它根据我的测试情况返回true或false。然而,似乎每次我尝试时,测试都没有调用上述函数的模拟,而是调用了主代码中的实际实现,这显然会带来很多麻烦。
我想了解如何模拟嵌入函数的行为,以便可以轻松地测试NewSchema函数的用例。
1条答案
按热度按时间yyyllmsg1#
您可以创建一个类似SubmittingIdentityHasOUInterface的接口。可以将该接口作为附加参数添加到。
然后在测试中,发送模拟实现。就是这样。
在这里详细解释:https://www.go-on-aws.com/testing-go/interface/interface-mock/