2014-02-26 86 views
2

可以编写特定于结构的函数。测试在GO中具有相同名称的函数

type one struct{} 

func (o *one) fly() {} 

我的问题是你怎么能测试一个功能,如果有名称相同,但指向不同结构两种功能。

type one struct{} 

func (o *one) fly() {} 

type two struct{} 

func (t *two) fly() {} 

由于格式为GO测试是的testXXX(T * testing.T){} 我不确定我会怎么能够单独测试每个功能。 谢谢

回答

7

TestXxx只是一个命名约定。 Xxx可能是任何你想要的,但Test(与BenchmarkExample)是必需的。所以,宣布2个测试功能 - TestOneFlyTestTwoFly,就是这样。或者你可以在TestFly中测试这两个测试,在一次测试中初始化两个结构。

+0

谢谢我认为它必须与实际的方法名称完全一致,否则它将无法正常运行。 – 165plo

0

在struct的实例上使用点运算符调用特定函数。

aOne := one{} 
aOne.fly() //Calls the first version 

aTwo := two{} 
aTwo.fly() //Calls the second version 
相关问题