unit-testing - 由于先前的测试用例失败而引发的断言异常

标签 unit-testing testing go junit assert

我想不出更好的标题。

在下面的代码中,如果 rollBackLoggernil,第一个测试用例将失败,但所有其他测试用例将引发异常。

除了使用 if 语句之外,是否有其他方法可以避免这种情况?

我相信这是单元测试中非常常见的情况,assert 中应该有一些函数或其他一些方法来避免这种情况。

assert.NotNil(rollbackLogger)
assert.Equal("Action", rollBackLogger[0].Action)
assert.Equal("random path", rollBackLogger[0].FilePath)

最佳答案

使用require.NotNil相反。

Package require implements the same assertions as the assert package but stops test execution when a test fails.

require.NoError 也特别有用。

关于unit-testing - 由于先前的测试用例失败而引发的断言异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51783247/

相关文章:

python - 为什么我的 Django 工厂函数在本地数据库中创建模型,而不是测试数据库?

pointers - 游览何时不使用指针指向变量中的结构字面量

iphone - 如何发布应用程序进行测试

php - 测试 Laravel 5.2 时不要移动原始文件

python - Django 测试异常 : "need more than 1 value to unpack"

c# - 最小起订量返回方法未按预期工作

java - 使用反射从列表中获取对象

go - 如何处理在 switch case 语句中返回两个对象

go - 从 io.Reader 创建一个 io.ReaderAt

unit-testing - 我应该如何使用大量 DOC(依赖代码)对方法进行单元测试?