使用testing进行单元测试

  1. golang的测试库testing

  2. 测试文件与被测试文件在同一个包中

  3. 测试文件名为被测试文件名(去后缀)_test.go

  4. 测试用例函数以Test开头,TestFunc1(t *testing.T)

  5. 一个测试用例文件中可以有多个测试用例函数

在测试用例函数中调用被测试函数,根据函数返回结果与预期的正确结果的比较,

判断函数是否正确。t.Log输出日志,t.Fatal输出错误信息。

执行测试文件的方式

  • 执行全部测试文件中全部函数 go test 如果需要输出日志信息go test -v

  • 测试单个文件 go test -v xxx_test.go xxx.go

  • 测试单个方法 go test -v -test.run TestFunc1

// 测试文件  bt_test.go
package goo import "testing" func TestFunc1(t *testing.T) {
result := Addto(100)
if result == 5050 {
t.Log("结果正确")
} else {
t.Fatal("结果有误")
}
}
// 被测试文件  bt.go
package goo func Func1(n int) int {
if n == 1 {
return 1
} else if n <= 0 {
return -1
} else {
return Func1(n-1) + n
}
}
// 执行结果
=== RUN TestAddto
--- PASS: TestAddto (0.00s)
bt_test.go:8: 结果正确
PASS

最新文章

  1. swift跳转到Appstore
  2. Python学习之路——基础篇(1)字符串格式化
  3. 44. log(n)求a的n次方[power(a,n)]
  4. Java中静态和非静态的区别
  5. Java中的IP对象以及本地域名解析
  6. java三大特性性:封装、继承和多态
  7. 新站如何做SEO及注意事项
  8. uva 10154 贪心+dp
  9. leetcode第一刷_Path Sum II
  10. Struts2 Spring3 Hibernate3 集成xml版本
  11. ASP.NET Core 2.0使用Cookie认证实现SSO单点登录
  12. 异常:This application has no explicit mapping for /error, so you are seeing this as a fallback.
  13. Python selenium 三种等待方式详解
  14. 使用Visual Studio Installer 2015打包WPF程序
  15. 100-days: twenty-seven
  16. (转)深入理解Java注解类型(@Annotation)
  17. 第五章 绘图基础(LINEDEMO)
  18. 【noip模拟赛5】细菌
  19. 京东无人超市的成长之路 如何利用AI技术在零售业做产品创新?
  20. 【php增删改查实例】第四节 -自己 DIY 一个数据库管理工具

热门文章

  1. 第五章 if语句
  2. LINUX开发使用的3个远程工具
  3. Daily Scrum 11.19 部分测试报告
  4. 20135234mqy 实验二 Java面向对象程序设计
  5. POJ 1185 炮兵阵地 状压dp
  6. 使用 java 实现一个简单的 markdown 语法解析器
  7. 修改shell命令的history记录个数
  8. Scrum 项目 4.0-5.0-约教网站开发(一)
  9. 【转】SQL SERVER 中 sp_rename 用法
  10. PHP 常用函数总结(三)