http/TEST.md

1.3 KiB
Raw Permalink Blame History

测试报告

测试场景覆盖

  • 基础请求: 验证了使用 Get 获取 JSON 响应并通过 To[T] 进行泛型绑定的功能。
  • 本地服务器: 验证了客户端与本地测试服务器的交互。
  • H2C 支持: 验证了 H2C (HTTP/2 Cleartext) 的兼容性。
  • 手动请求: 验证了通过 ManualDo 进行精细化控制的流式请求。
  • 文件下载: 验证了使用 Download 进行并发分段下载的功能。
  • 多部分表单 (Multipart): 验证了使用流式 io.PipeMultipart 发送,以及多类型、多值字段的支持。
  • 表单与映射: 验证了使用 Form, map[string]string, map[string][]string, 和 map[string][]any 自动转为正确的 application/x-www-form-urlencodedapplication/json

性能测试结果 (Benchmark)

goos: darwin
goarch: amd64
pkg: apigo.cc/go/http
cpu: Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz
BenchmarkGet-16    	   13606	     79289 ns/op

🛡️ 鲁棒性防御 (Robustness)

  • 可选参数与验证POST/PUT 请求自动前置验证 Multipart 文件的安全路径,并受安全沙箱控制。
  • JS 错误调用栈JS 桥接层改用具名导出并使用 jsmod.MakeError 包裹错误,确保 JS 抛出异常时携带准确的 Go 运行时堆栈。

测试覆盖率

  • 整体覆盖率: 56.5% of statements