【发布时间】:2013-01-11 20:18:25
【问题描述】:
在 Erlang 通用测试中手动使测试用例失败的最佳方法是什么? 我正在使用这样的东西:
ok = nok, % fail as soon as possible
引发错误匹配异常并使案例失败。 我想知道是否还有其他(更好的)方法可以实现这一目标?
【问题讨论】:
在 Erlang 通用测试中手动使测试用例失败的最佳方法是什么? 我正在使用这样的东西:
ok = nok, % fail as soon as possible
引发错误匹配异常并使案例失败。 我想知道是否还有其他(更好的)方法可以实现这一目标?
【问题讨论】:
不,这是一种标准的非常好的方法。另一种选择是不仅失败,而且尝试生成更相关的错误。例如,如果函数foo_test() 在成功时返回ok,那么另一种方法可能是这样写:
ok = foo_test()
测试并生成错误。它仍然是 badmatch 错误,但更容易看出哪里出了问题。
【讨论】:
我有时会使用error 函数:
error(incorrect_foo)
这样我就可以很容易地在同一个测试用例中区分不同的失败原因。例如,我可能在同一个函数的某处有error(incorrect_bar)。
【讨论】: