有没有办法在单元测试期间忽略来自第三方包的测试错误?

由于与测试本身无关的第 3 方错误,我的测试失败了。基本上我必须使用的一些测试服务器无法在 Windows 操作系统上关闭,但实际上运行良好。


我需要忽略它产生的错误,但它们在下面的延迟部分。有没有办法完全忽略来自前两行的任何错误?


func TestDoSomething(t *testing.T) {

    testServer := setupTestNomad(t) //contains 3rd party test server creation

    defer testServer.Stop()  //actually fails here in the 3rd party struct due to 3rd party code itself


    data := DoSomething()

    if data == nil { //data is not null and all is fine here

        t.Errorf("Failed, data null")

    }

}

测试因此在他们的代码中死亡

http://img2.mukewang.com/636a13ae0001108404850079.jpg

叮当猫咪
浏览 92回答 2
2回答

莫回无

有没有办法在单元测试期间忽略来自第三方包的测试错误?不,不是你的情况,因为测试不是“来自第三方包”:测试是你的,它失败了。您的代码从“第三方包”调用函数的事实在这里没有任何意义。

慕妹3242003

将其移动到另一个名称空间并没有帮助,上述有用的评论也没有帮助。testing.T我随身携带并用于创建新的 Nomad 测试服务器的结构允许第 3 方代码无法通过我的测试。不使用它并使用如下的新对象可以解决此问题。nomadTestUtil.NewTestServer(&testing.T{},...
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go