登录
首页 >  Golang >  Go问答

如果缺少证书,调用 tls.LoadX509KeyPair 过程将会失败

来源:stackoverflow

时间:2024-02-29 09:09:19 356浏览 收藏

哈喽!今天心血来潮给大家带来了《如果缺少证书,调用 tls.LoadX509KeyPair 过程将会失败》,想必大家应该对Golang都不陌生吧,那么阅读本文就都不会很困难,以下内容主要涉及到,若是你正在学习Golang,千万别错过这篇文章~希望能帮助到你!

问题内容

cert, err := tls.LoadX509KeyPair(os.Getenv("CERT"), os.Getenv("KEY"))
if err != nil {
    return err
}

我想为包含此代码片段的函数编写单元测试。但是,我的测试环境在 os.getenv("cert")/os.getenv("key") 中永远不会有任何内容。这使得代码(tls.loadx509keypair())返回错误,这不允许我测试该函数。 我应该如何模拟/修改这个片段?


解决方案


这是通过为 certfilekeyfile 定义变量然后在测试环境中覆盖它们来实现的。

//.. 
var certFile = os.Getenv("CERT")
var keyFile = os.Getenv("KEY")
//...
cert, err := tls.LoadX509KeyPair(certFile, keyFile)
  if err != nil {
     return err
  }

按照以下链接查看如何覆盖测试环境中的变量。 In Go,how to get test environment at run time?

理论要掌握,实操不能落!以上关于《如果缺少证书,调用 tls.LoadX509KeyPair 过程将会失败》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

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