我习惯于试驾我的代码。现在我是 Go 的新手,我正试图尽快把它弄好。我正在使用标准库中的测试包,这似乎已经足够好了。(我也喜欢它不是另一个外部依赖项。与任何 Java 或 Ruby 项目相比,我们目前总共有 2 个依赖项......)无论如何 - 它看起来像 golang 中的断言看起来像这样:
func TestSomething(t *testing.T) {
something := false
if something {
t.Log("Oh noes - something is false")
t.Fail()
}
}
我觉得这很冗长,并想在一行上做:
Assert( something, "Oh noes - something is false" )
或类似的东西。我希望我在这里错过了一些明显的东西。最好/惯用的方法是什么?
更新:只是为了澄清。如果我要做这样的事情:
func AssertTrue(t *testing.T, value bool, message string) {
if value {
t.Log(message)
t.Fail()
}
}
然后像这样写我的测试
func TestSomething(t *testing.T) {
something := false
AssertTrue(t, something, "Oh noes - something is false")
}
那么这不是最好的方法吗?