To run a library's regression tests, run Boost's b2 utility from the <boost-root>/libs/<library>/test directory.
To run a single test, specify its name (as found in <boost-root>/libs/<library>/test/Jamfile.v2) on the command line.
Установил Visual Studio 2015, поставил Update 3. Распаковал Boost 1.66 в папку на жестком диске.
Открыл "Developer Command Prompt for VS2015" (консоль), захожу в какую-нибудь либу,
например libs\smart_ptr\test и запускаю тест командой b2.
Непонятно то, что значительная часть тестов заваливается. Например, у меня не проходят тесты для библиотек
accumulators (проблемы с weighted_median и p_square_cumul_dist), assign, bimap, bind, date_time, geometry,
graph, lockfree, phoenix... Дальше не смотрел.
Запуск b2 из Boost\status с разными опциями ничего принципиально не меняет.
Imho, для библиотеки такого размаха как-то многовато фейлов.
Что это? Такое "качество" тестов Boost? Или самого Boost? Или я что-то делаю неправильно?
Спасибо, эти таблички я видел. И там приведены тесты для ветки master из каких-то непонятных ревизий git.
А релизу 1.66 соответствует ревизия b143a5... (посмотрел в git showlog) — она в таблице вообще не указана.
Интересует другое: как получить "зеленые полоски" у себя локально, т.е. убедиться, что текущая
релизная версия Boost (1.66) действительно проходит все тесты на VS 2015 update 3?
У меня, например, тесты Boost.Bind под x64 не проходят, из чего я делаю вывод, что библиотека сломана и
пользоваться ей нельзя.
Я пытаюсь мигрировать с древней версии Boost на новую, попутно перепрыгнув через несколько версий компилятора.
Хотелось бы обезопасить себя от ошибок в чужом коде.
Одно из двух: либо я неправильно запускаю тесты (а как тогда правильно?), либо сама "идеология" тестов в
Boost давно сломана и доверять им вообще нельзя. Кстати, проверил ради интереса на Boost 1.42.0 в MSVC-9.0 —
там такая же беда, из нескольких произвольно взятых библиотек сразу повалились фейлы на тестах.
В общем, буду признателен за любой пинок в правильном направлении.
O>Установил Visual Studio 2015, поставил Update 3. Распаковал Boost 1.66 в папку на жестком диске.
Может надо его собирать, а не распаковывать?
И лучше переходить на версию 1.65.1 Версии 1.*.0 могут оказаться менее стабильными.
Здравствуйте, TimurSPB, Вы писали:
O>>Установил Visual Studio 2015, поставил Update 3. Распаковал Boost 1.66 в папку на жестком диске.
TSP>Может надо его собирать, а не распаковывать?
Собрал Boost во всех комбинациях (т.е. debug/release, static/shared, 32/64) — ничего не изменилось.
Насколько я понял, сборка Boost на тесты вообще никак не влияет, библиотеки во время тестов
все равно заново собираются в bin.v2.