golang中表格驱动测试

≡放荡痞女 提交于 2019-11-26 14:23:31

我们都知道,java中编写测试用例中多数使用断言,传入两个参数(期望值,实际值)进行进行对比,如下:

Assert.assertEquals(int expected, int actual)
如果对比一致,继续执行。若不一致,会中断测试,抛出相应的异常。

go中简便测试方法:表格驱动测试。

什么是表格驱动测试?

个人认为,表格驱动测试是一种使用匿名结构体,把数据和逻辑处理完全分离的测试方法。

示例如下:我写的比较简单,a b两个数相乘
在这里插入图片描述
测试用例:

如下图,匿名结构体中a,b为入参,c为测试期望值 (结构体中只放数据)
range方法中遍历数组,调用方法进行对比 (方法中只处理逻辑)
在这里插入图片描述

有数据错误的运行效果:

我写的第三条测试数据是错误的,仔细看下图,期望数据忘记了也没关系。(可以打印出正确的值)
在这里插入图片描述

数据都正确的效果:

在这里插入图片描述

也可以命令行运行:

切换到测试类所在目录下,运行:go test .
在这里插入图片描述

注意:
  • 测试类命名:xxx_test
  • 方法名以Test开头
  • 导入t *testing.T包
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!