使用 Golang 进行功能测试
Functional testing with Golang
我有一个用 Golang 编写的网络服务。
我需要重构它,因为它写得不好。
我见过 Golang 使用格式 TestMethodName(t *testing.T)
。这非常适合单元测试,但就我而言,由于重构,方法会发生很大变化。
这就是我想编写功能测试的原因,这样我就可以测试每个端点,并检查输出格式是否正确,而不依赖于功能
我应该如何使用 Golang 来实现?
是否有任何框架可以帮助我进行功能测试?在另一个堆栈中,例如 PHP / Laravel,我可以将 PostgreSQL 与 SQLite 或内存测试交换,这对于此类测试非常实用。
您可以使用 net/http/httptest
包和模拟外部依赖项来测试您的 API 端点。
参见示例:https://golang.org/src/net/http/httptest/example_test.go
我有一个用 Golang 编写的网络服务。
我需要重构它,因为它写得不好。
我见过 Golang 使用格式 TestMethodName(t *testing.T)
。这非常适合单元测试,但就我而言,由于重构,方法会发生很大变化。
这就是我想编写功能测试的原因,这样我就可以测试每个端点,并检查输出格式是否正确,而不依赖于功能
我应该如何使用 Golang 来实现?
是否有任何框架可以帮助我进行功能测试?在另一个堆栈中,例如 PHP / Laravel,我可以将 PostgreSQL 与 SQLite 或内存测试交换,这对于此类测试非常实用。
您可以使用 net/http/httptest
包和模拟外部依赖项来测试您的 API 端点。
参见示例:https://golang.org/src/net/http/httptest/example_test.go