前言
前几话主要讲解关于使用golang进行单元测试,在单元测试的上一层就是接口测试,本节主要讲使用golang进行接口测试,其中主要以http协议的接口测试来讲解
golang中的http请求
golang中拥有一个原生的http依赖库:net/http,http服务器的建立还是http客户端的开发,都会使用到这个依赖库,这里主要讲解时client部分,作为请求发起方应用于日常的接口测试,例示代码如下:
get请求
package mainimport ( "fmt" "io/ioutil" "net/http")func main() { //模拟一个get提交请求 resp, err := http.Get("http://127.0.0.1:12345/checkon") if err != nil { panic(err) } defer resp.Body.Close() //关闭连接 body, err := ioutil.ReadAll(resp.Body) //读取body的内容 fmt.Println(string(body))}
返回结果
E:\go_project>go run testget.go{ "code": 200, "data": "", "msg": "online", "state": "success"}
post请求:
package mainimport ( "fmt" "io/ioutil" "net/http" "strings")func main() { //模拟一个post提交请求 resp, err := http.Post("http://mand-line-arguments 0.613s
输出的结果符合预期,这也是比较基本的http接口测试
小结
就上文来说,我们基本可以通过本文掌握如何做http接口测试,其核心还是使用http依赖库发出请求获取响应,利用gocheck进行断言,当然还可以用testing,下一节继续讲一下http接口测试,但会重点讲专门做http接口测试的测试框架httpexpect以及用于mock的httptest,希望对大家的学习有所帮助,也希望大家多多支持。