为了账号安全,请及时绑定邮箱和手机立即绑定

如果未提供证书,单元测试 tls.LoadX509KeyPair 将失败

如果未提供证书,单元测试 tls.LoadX509KeyPair 将失败

Go
www说 2023-06-12 16:56:22
cert, err := tls.LoadX509KeyPair(os.Getenv("CERT"), os.Getenv("KEY"))if err != nil {    return err}我想为包含这段代码的函数编写单元测试。但是,我的测试环境中永远不会有任何内容os.Getenv("CERT")/ os.Getenv("KEY")。这使得 code( tls.LoadX509KeyPair()) 返回一个错误,不允许我测试该函数。我应该如何模拟/修改此代码段?
查看完整描述

1 回答

?
智慧大石

TA贡献1946条经验 获得超3个赞

这通过为certFile和keyFile然后在测试环境中覆盖它们来定义变量。


//.. 

var certFile = os.Getenv("CERT")

var keyFile = os.Getenv("KEY")

//...

cert, err := tls.LoadX509KeyPair(certFile, keyFile)

  if err != nil {

     return err

  }

按照以下链接查看如何覆盖测试环境中的变量。 在Go中,如何在运行时获取测试环境?


查看完整回答
反对 回复 2023-06-12
  • 1 回答
  • 0 关注
  • 182 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信