如何在该框架中设置expect_equal的容差

我想知道在R中是否可以使用testthattestframework设置相等的容差

当前,如果示例.R为:

库(testthat)
三次&lt-函数(x)3*x
上下文(“测试三次”)
测试_(‘三次返回三次x’{
期望相等(三次(3),9)
期望相等(三倍(π),9.4247)
})

并使用测试文件('example.R','stop')执行,第一个测试通过,但第二个测试失败,原因是:

错误:测试失败:“三次返回三次x”
未预期:三次(pi)不等于9.4247
平均相对差异:8.271963e-06。

是否可以为平均相对差异设置更高的误差阈值?例如1e-3。我有一些预期结果,精度只有3位小数,这意味着现在我的测试总是失败

您可以传递参数scaletolerance。这些参数被传递给all.equal

期望相等(三倍(pi),9.4247,公差=1e-8)
错误:三次(pi)不等于9.4247
平均相对差:8.271963e-06
期望相等(三倍(pi),9.4247,公差=1e-3)

有关更多帮助,请参见?all.equal

发表评论