在测试 Go 时,跨包共享设置和拆卸方法是一个常见的问题。php小编鱼仔将为您解答这个问题。在Go语言中,可以使用`flag`包来设置和获取命令行参数。通过在测试文件中使用`flag.Parse()`函数,可以将命令行参数解析并设置到对应的变量中。对于需要共享设置的测试场景,可以在测试文件中设置全局变量,并在各个测试函数中使用。当测试结束后,可以在`TestMain`函数中进行拆卸操作,恢复原来的设置状态。这样就可以实现跨包共享设置和拆卸的方法。
问题内容
假设我有两个软件包 foo
和 bar
。每个包都有一个文件和一个测试文件:
foo
---widget.go
---widget_test.go
bar
---wingding.go
---wingding_test.go
登录后复制
现在对于这两个测试(widget_test.go 和 wingding_test.go),我想分享一些设置代码。我知道我可以将此代码放入 main_test.go 内的每个包中。但我显然不想在两个地方复制/粘贴代码。那么我可以把这段代码放在哪里以便在包之间共享呢?
解决方法
将其放入 foo
和 bar
在测试中导入的另一个包 baz
中。我们在测试中将其用于数据库设置和拆卸代码。
以上就是在测试 Go 时如何跨包共享设置和拆卸方法?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!