我已经查看了文档,但它没有解释设置gin测试模式的用法
gin.SetMode(gin.TestMode)
该测试模式的用途是什么?设置&;在我的测试中没有设置此模式.
我已经查看了文档,但它没有解释设置gin测试模式的用法
gin.SetMode(gin.TestMode)
该测试模式的用途是什么?设置&;在我的测试中没有设置此模式.
标志gin.DebugMode
用于控制gin.IsDebugging()
的输出,这会添加一些额外的日志(log)输出,并将HTML呈现程序更改为调试 struct HTMLDebug
.
gin.TestMode
用于Gin自己的单元测试,以切换调试模式(以及附加日志(log))的打开和关闭,以及调试HTML呈现程序的使用.
除此之外,它没有其他用途(source).
但是,可以使用环境变量GIN_MODE=test
来控制该标志.然后,由于Mode()
已导出,您可以在应用程序代码中使用它,例如,声明测试路由.如果您计划运行E2E测试套件或其他一些集成测试,这可能有一些优点:
r := gin.New()
if gin.Mode() == gin.TestMode {
r.GET("/test", func(c *gin.Context) {
c.String(418, "I don't exist in production")
})
}