Go中非测试函数的断言

Assertion in non-test function in Go

我想在函数中使用断言,但它不是测试函数。这只是一个普通函数,我想使用 assert.Equal(param1, some_constant) 之类的东西。我遇到了以下包裹:https://godoc.org/github.com/stretchr/testify/assert 虽然,它似乎还需要 testing 包,并为函数提供类型为 *testing.T 的参数。 Go 中有没有其他的 assert 函数,我可以直接调用 assert 函数而不实际依赖任何其他测试包或参数?

Go 不提供断言。 Go 团队的语言常见问题解答中有一个部分:https://golang.org/doc/faq#assertions 如果你真的喜欢它,你可以只写一个普通函数,它接受两个值,如果它们的计算结果等于或不等于,就做一些事情,如你所愿。