我尝试使用testify为我的Gin API编写测试。
不幸的是,它在测试中以意外的 HTTP404
响应代码进行响应。
当我执行程序时,我可以通过 curl 和浏览器到达相应的界面。
为什么我的测试失败了?
测试代码:
func (suite *statisticTestSuite) TestGetProjects() {
suite.T().Log("TestGetAllProjects")
recorder := httptest.NewRecorder()
router := gin.Default()
request, err := http.NewRequest(http.MethodGet, "/api/v1/statistics/projects", nil)
request.Header = http.Header{"Content-Type": []string{"application/json"}}
assert.NoError(suite.T(), err)
router.ServeHTTP(recorder, request)
data := make(map[string]interface{})
data["projects"] = 3
respBody, err := json.Marshal(gin.H{
"code": 200,
"msg": "ok",
"data": data,
})
fmt.Println(recorder.Code)
fmt.Println(respBody)
}