登录
首页 >  Golang >  Go问答

编写失败的单元测试如何使 json.NewDecoder.Decode 失败?

来源:stackoverflow

时间:2024-02-07 14:51:25 253浏览 收藏

今日不肯埋头,明日何以抬头!每日一句努力自己的话哈哈~哈喽,今天我将给大家带来一篇《编写失败的单元测试如何使 json.NewDecoder.Decode 失败?》,主要内容是讲解等等,感兴趣的朋友可以收藏或者有更好的建议在评论提出,我都会认真看的!大家一起进步,一起学习!

问题内容

我必须为一个函数编写单元测试,并且该函数使用 json.newdecoder.decode

var infos models.RegisterInfos // struct with json fields
err := json.NewDecoder(r.Body).Decode(&infos)
if err != nil {
    // do something
}

如何在 json.newdecoder(r.body).decode(&infos) 的单元测试(使用 testing 包)中模拟错误?我尝试查看 newdecoderdecode 源代码,但我找不到任何可以在短短几行内生成错误的内容。


正确答案


您可以发送像 这样的正文作为示例:

func main() {
    body := ""
    var infos RegisterInfos // struct with json fields
    err := json.NewDecoder(strings.NewReader(body)).Decode(&infos)
    if err != nil {
        fmt.Println(err)
    }
}

查看https://go.dev/play/p/44E99D0eQou

理论要掌握,实操不能落!以上关于《编写失败的单元测试如何使 json.NewDecoder.Decode 失败?》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>