内容简介:周五在做首先,绝对不能做的事:我目前是在
起因
周五在做 go test
测试时,碰到个问题,我要对一个 xxx
函数写测试样例,然而它的首字母是小写的,没有导出,单元测试过不去,而这个 xxx
函数外面还有一个 YYY
函数首字母是大写的,但要经过很长的逻辑才能到 xxx
函数。这时我又要完成对 xxx
函数进行测试,又不想经过 YYY
函数走逻辑,该怎么办呢?
实现过程
首先,绝对不能做的事:
-
将
xxx函数改为首字母大写的Xxx函数原因:很多地方都在调这个函数,你改了这一处只满足你这次的测试,那其他基本业务流程也就崩了。
我目前是在 test
文件夹里新建了一个 xxx_test.go
测试文件,样子长这样
package test
func Testxxx(t testing.T){
control.XXX()
}
由于 xxx
函数是在 control
包里,因此我要在 control
包下建一个 export.go
文件
package control var XXX = xxx
然后执行 go test
命令,它会遍历 control
包下的所有文件,这时 export.go
文件 里的 var XXX = xxx
就起到了一个桥梁作用。
这时测试的时候就不需要再经过 YYY
的逻辑走到 xxx
函数里面。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
深入React技术栈
陈屹 / 人民邮电出版社 / 2016-11-1 / CNY 79.00
全面讲述React技术栈的第一本原创图书,pure render专栏主创倾力打造 覆盖React、Flux、Redux及可视化,帮助开发者在实践中深入理解技术和源码 前端组件化主流解决方案,一本书玩转React“全家桶” 本书讲解了非常多的内容,不仅介绍了面向普通用户的API、应用架构和周边工具,还深入介绍了底层实现。此外,本书非常重视实战,每一节都有实际的例子,细节丰富。我从这......一起来看看 《深入React技术栈》 这本书的介绍吧!