gpt4 book ai didi

unit-testing - 在 Go 中测试未导出的函数

转载 作者:IT王子 更新时间:2023-10-29 00:36:33 26 4
gpt4 key购买 nike

我有一个名为 example.go 的文件和另一个名为 example_test.go 的测试文件,它们都在同一个包中。我想在 example.go

中测试一些未导出的函数

当我运行测试时,未导出的函数在 example_test.go 中未定义。我想知道在同一包中的测试文件中测试未导出函数的最佳约定是什么?

最佳答案

这也适用于私有(private)类型的私有(private)成员函数。

例如。

abc.go如下

package main

type abc struct {
A string
}

func (a *abc) privateFunc() {

}

abc_test.go如下

package main

import "testing"

func TestAbc(t *testing.T) {
a := new(abc)
a.privateFunc()
}

对此运行 go test 应该可以让您完全通过,没有任何错误。

linux-/bin/bash@~/trials/go$ go test -v
=== RUN TestAbc
--- PASS: TestAbc (0.00s)
PASS
ok _/home/george/trials/go 0.005s

关于unit-testing - 在 Go 中测试未导出的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46451058/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com