Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Usage variants

Boost , Boost.Test , Boost.Test

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Unit Test Framework поддерживает три различных варианта использования:

В большинстве случаев у вас не должно быть проблем с определением того, какой из них использовать, поскольку есть четкие причины, почему вы предпочитаете каждый из них. Следующие разделы должны помочь вам с решением.

Single-header usage variant

Если вы предпочитаете избегать компиляции автономной библиотеки, вам следует использовать один заголовок варианта Unit Test Framework. Этот вариант требует, чтобы вы включили, как следует из его названия, один заголовок: #include <boost/test/included/unit_test.hpp> и нет необходимости связываться с какой-либо библиотекой. Существует несколько способов выполнения инициализации, но самый простой способ заключается в следующем:

#define BOOST_TEST_MODULE test module name
#include <boost/test/included/unit_test.hpp>

BOOST_TEST_MODULE макрос необходимо определить перед включить и установить для тестирования названия модуля. Это имя может включать в себя пространства и не должно быть обернуто в цитаты.

Ограничение одного варианта заголовка заключается в том, что вы можете реализовать этот способ тестовых модулей только с одним блоком перевода.

Для более подробной информации о настройке для этого варианта использования вы можете проверить этот раздел.

Static library usage variant

Для большинства пользователей, которые имеют доступ к предварительно построенной статической библиотеке [1] Unit Test Framework или могут сделать это сами, после использования может быть наиболее универсальным и простым подходом. Этот вариант использования предполагает два шага.

  1. Для начала необходимо добавить следующую строку ко всем единицам перевода в тестовом модуле:

    #include <boost/test/unit_test.hpp> 

    и

    #define  BOOST_TEST_MODULE test module name #include <boost/>> Это имя может включать в себя пространства и не должно быть обернуто в цитаты. 

  2. Второй шаг - связать с Unit Test Framework статической библиотекой.
[Note] Note

Заголовок <boost/test/unit_test.hpp> является заголовком 'агрегата': он включает в себя большинство других заголовков, которые содержат определения Единицы тестирования.

Обратная сторона этого варианта использования заключается в том, что каждый испытательный модуль, следуя этому варианту использования, будет статически связан с Unit Test Framework, что может быть чем-то, чего вы хотите избежать (например, для экономии места). Для получения дополнительной информации об этих вариантах конфигурации проверьте этот раздел.

Shared library usage variant

В проекте с большим количеством испытательных модулей вариант статической библиотеки Unit Test Framework может привести к тому, что вы потеряете много дискового пространства. Решение состоит в том, чтобы динамически связать тестовый модуль с Unit Test Framework, построенной как общая библиотека. Этот вариант использования предполагает два шага.

Обратная сторона этого варианта использования заключается в том, что вам нужно будет убедиться, что Unit Test Framework общая библиотека доступна во время выполнения тестового модуля.

Кроме того, общий вариант использования библиотеки облегчает пользовательские тестовые бегуны. Для получения дополнительной информации об этой проверке этот раздел.

[Caution] Caution

На Windows испытательный модуль и Unit Test Framework общая библиотека должны ссылаться на один и тот же CRT. Не делать этого (например, Unit Test Framework общая библиотека в режиме release, в то время как тест-модуль находится в режиме debug) приведет к авариям.



[1] эти файлы распространяются с упаковочными системами на Linux и OSX, например


PrevUpHomeNext

Статья Usage variants раздела Boost.Test Boost.Test может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Boost.Test ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 23:29:46/0.0091190338134766/1