gpt4 book ai didi

unit-testing - Go Martini 单元测试示例

转载 作者:IT王子 更新时间:2023-10-29 02:05:16 24 4
gpt4 key购买 nike

我是 Go 的新手,想知道是否有关于如何测试 Go Martini 的处理程序代码的示例的约定/标准?

提前致谢!

最佳答案

martini-contrib 库有很多值得一看的现有代码:https://github.com/martini-contrib/secure/blob/master/secure_test.go

例如

func Test_No_Config(t *testing.T) {
m := martini.Classic()
m.Use(Secure(Options{
// nothing here to configure
}))

m.Get("/foo", func() string {
return "bar"
})

res := httptest.NewRecorder()
req, _ := http.NewRequest("GET", "/foo", nil)

m.ServeHTTP(res, req)

expect(t, res.Code, http.StatusOK)
expect(t, res.Body.String(), `bar`)
}

总结:

  1. 使用 martini.Classic() 创建服务器
  2. 创建到您要测试的处理程序的路由
  3. 针对响应记录器执行它
  4. 检查响应记录器上的结果(状态代码、正文)是否符合预期。

关于unit-testing - Go Martini 单元测试示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30958005/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com