![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Output streams testing toolBoost , Boost.Test , Writing unit tests
|
Код |
---|
<#defineBOOST_TEST_MODULEexample #include<boost/test/included/unit_test.hpp> #include<boost/test/output_test_stream.hpp> usingboost::test_tools::output_test_stream; BOOST_AUTO_TEST_CASE(test) { output_test_streamoutput; inti=2; output<<"i="<<i; BOOST_TEST(!output.is_empty(false)); BOOST_TEST(output.check_length(3,false)); BOOST_TEST(output.is_equal("i=3")); }> |
выход |
---|
<>example Running1testcase... test.cpp(15):errorin"test":checkoutput.is_equal("i=3")hasfailed.Outputcontent:"i=2" ***1failuresisdetectedintestsuite"example"> |
![]() |
Note |
---|---|
Использование< |
![]() |
Tip |
---|---|
Старайтесь проводить проверки как можно чаще. Это не только упрощает модели, с которыми вы сравниваете, но и позволяет более точно определить возможный источник отказа. |
файл шаблонаявляется файлом-компаньоном, содержащим шаблоны, которым должен соответствовать поток. Ваше тестирование будет выглядеть как серия операторов вывода, за которыми следуют проверки соответствия, повторяющиеся несколько раз.
В приведенном ниже примере файл<pattern_file
>содержит шаблоны, которые должны совпадать.
i=2 File: test.cpp Line:XXX
output_test_stream
выход |
---|
<>example Running1testcase... test.cpp(16):errorin"test":checkoutput.match_pattern()hasfailed.Mismatchatposition23 ...5... ...4... ***1failuresisdetectedintestsuite"example"> |
![]() |
Tip |
---|---|
Старайтесь проводить проверки как можно чаще, поскольку это позволяет более точно определить возможный источник сбоя. |
Статья Output streams testing tool раздела Boost.Test Writing unit tests может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Writing unit tests ::
реклама |