0
我正在为我在golang中开发的函数编写单元测试。这里是代码片段:如何在golang中模拟函数以获得不同的返回值
func myFunc() {
//there is some code
err := json.Unmarshal (a, &b)
if err != nil {
//handle error
}
//there is some more code
err := json.Unmarshal (c, &d)
if err != nil {
//handle error
}
}
现在我想嘲笑首先解组返回成功和第二解组返回失败。在Python中,我看到一个类似的帖子: Python mock multiple return values
但我找不到一个golang。任何人都可以请帮我。
不幸的是,这在Golang中并不那么简单。最好的选择是重构你的函数,这样'json.Unmarshal'可以强制返回一个错误,例如当调用'json.Unmarshal(a,&b)'时,a不是json格式。 – Yerken