- 前言
- Go 与操作系统
- Go 内部机制
- Go 基本数据类型
- 4 组合类型的使用
- 5 数据结构
- 6 Go package 中不为人知的知识
- 7 反射和接口
- 8 Go UNIX 系统编程
- 08.1 关于 UNIX 进程
- 08.2 flag 包
- 8.2 flag 包
- 08.3 io.Reader 和 io.Writer 接口
- 08.4 bufio 包
- 08.5 读取文本文件
- 08.6 从文件中读取所需的数据量
- 08.7 为什么我们使用二进制格式
- 08.8 读取 CSV 文件
- 08.9 写入文件
- 08.10 从磁盘加载和保存数据
- 08.11 再看strings包
- 08.12 关于bytes包
- 08.13 文件权限
- 08.14 处理 Unix 信号
- 08.15 Unix 管道编程
- 08.16 遍历目录树
- 08.17 使用 ePBF
- 08.18 关于 syscall.PtraceRegs
- 08.19 跟踪系统调用
- 08.20 User ID 和 group ID
- 08.21 其他资源
- 08.22 练习
- 08.23 总结
- 9 并发 Goroutines、Channel 和 Pipeline
- 10 Go 并发-进阶讨论
- 11 代码测试、优化及分析
- 12 Go 网络编程基础
- 13 网络编程 - 构建服务器与客户端
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
11.7 测试
软件测试一个非常大的主题,而且它不能被一本书中的一章的单独一节所涵盖。因此,这简要的部分将介绍尽可能多的实用信息。
Go 允许您为您的代码编写测试来发现缺陷。严格讲,这节是关于自动测试的,包含写额外代码来验证真实代码;即产品代码,是否按预期运行。因此,一个测试函数的结果是不是 PASS
就是 FAIL
。很快您将看到它是怎么运作的。
虽然 Go 的测试方法起初可能看起来很简单,特别是如果您将它与其他编程语言的测试实践进行比较,它非常高效和有效,因为它不需要占用开发者的太多时间。
Go 遵循有关测试的某些约定。首先,测试函数应该写在以 _test.go
结尾的 Go 源码中。因此,如果您有一个名为 aGoPackage.go
的包,那么您的测试代码应该放在名为 aGoPackage_test.go
的文件中。测试函数以 Test
开头,并检查生产包的功能行为的正确性。
最后,您需要引入 testing
标准包以便 go test
子命令正确运行。如您马上看到的,这个引入要求也适用于另外两种情况。
一旦测试代码正确,go test
子命令为您做了所有脏活,包括为特定函数扫描所有 *_test.go
文件,生成一个临时的正确 main
包来调用这些特定函数,获得结果并产生最终输出。
总是把测试代码放在另一个源文件。没必要创建一个难以阅读和维护的庞大源文件。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论