如何在GOLANG中覆盖多个文件

我在GO-LANG中有一个包,其中包含几个实现它的文件。(所有文件都在同一目录中)


file1: mypackage.go

package mypackage

func f1 () {}


file2: mypackage_addition.go

package mypackage

func f2 () {}


file3: mypackage_test.go

package mypackage

import "testing"

func TestF1 (t *testing.T) { 

    f1()

}


file4: mypackageAddition_test.go

package mypackage

import "testing"

func TestF2 (t *testing.T) { 

    f2()

}

我这样做是为了获得覆盖范围:


mypackage> $ tree

.

├── mypackage.go

├── mypackageAddition_test.go

├── mypackageAdditions.go

└── mypackage_test.go


0 directories, 4 files

mypackage> $ go test -v -coverprofile cover.out ./...

=== RUN   TestF2

--- PASS: TestF2 (0.00s)

=== RUN   TestF1

--- PASS: TestF1 (0.00s)

PASS

coverage: 0.0% of statements

ok      github.com/MyDevelopment/mypackage  0.701s  coverage: 0.0% of statements

mypackage> $ go tool cover -html=cover.out -o cover.html

mypackage> $ open cover.html 

http://img3.mukewang.com/607d236e00015f3605400031.jpg

http://img4.mukewang.com/607d2378000192af02360110.jpg

当我打开html时,我只会得到f1()的内容。
f2被称为(我在调试中验证了它),并且f2的运行在文本中表示,但在html文件中未表示。

任何帮助表示赞赏。


月关宝盒
浏览 290回答 1
1回答

人到中年有点甜

只是重申我的评论因此,在测试了这一点之后,我想到了同样的事情,但是当我点击下拉列表并切换到mypackage_adding.go时,f2()被覆盖。它只是在另一个文件中。只需在HTML页面的下拉菜单中更改文件即可。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go