使用BOOST_DATA_test_CASE_F设置测试范围公差



BOOST_FIXTURE_TEST_CASE中,您可以为所有BOOST_TEST调用设置容差,如下所示:

BOOST_FIXTURE_TEST_CASE(Testname, SomeFixture, *utf::tolerance(.01))

但是,我找不到一种方法来使用BOOST_DATA_TEST_CASE_F

来自Boost:

BOOST_DATA_TEST_CASE_F(my_fixture, test_case_name, dataset, var1, var2..., varN)

我试过明显的

BOOST_DATA_TEST_CASE_F(my_fixture, test_case_name, dataset, var1, var2..., varN, *utf::tolerance(.01))

但无济于事。在我看来,它只是没有得到支持。

有人知道如何复制类似的行为而不必在BOOST_DATA_TEST_CASE_F中的每个BOOST_TEST调用中指定容差吗?

我使用的是1.72版本。

我看不出有什么方法可以做到这一点,但您可以在BOOST_AUTO_TEstrongUITE((中设置公差,并且您可以拥有任意多的套件。因此:

BOOST_AUTO_TEST_SUITE(suite1, *utf::tolerance(.01))
BOOST_DATA_TEST_CASE_F(my_fixture, test_case_name, dataset, var1, var2..., varN)
BOOST_AUTO_TEST_SUITE_END()

如有必要,重复上述步骤。

最新更新