*** ВНИМАНИЕ: Блог переехал на другой адрес - demin.ws ***
Показаны сообщения с ярлыком gmock. Показать все сообщения
Показаны сообщения с ярлыком gmock. Показать все сообщения

понедельник, 18 апреля 2011 г.

Google Test 1.6.0

Только что вышла новая версия отличной библиотеки для unit-тестирования на С++ - Google C++ Testing Framework.

Вот список изменений:

  • New feature: ADD_FAILURE_AT() for reporting a test failure at the
    given source location -- useful for writing testing utilities.
  • New feature: the universal value printer is moved from Google Mock
    to Google Test.
  • New feature: type parameters and value parameters are reported in
    the XML report now.
  • A gtest_disable_pthreads CMake option.
  • Colored output works in GNU Screen sessions now.
  • Parameters of value-parameterized tests are now printed in the
    textual output.
  • Failures from ad hoc test assertions run before RUN_ALL_TESTS() are
    now correctly reported.
  • Arguments of ASSERT_XY and EXPECT_XY no longer need to support << to
    ostream.
  • More complete handling of exceptions.
  • GTEST_ASSERT_XY can be used instead of ASSERT_XY in case the latter
    name is already used by another library.
  • --gtest_catch_exceptions is now true by default, allowing a test
    program to continue after an exception is thrown.
  • Value-parameterized test fixtures can now derive from Test and
    WithParamInterface<T> separately, easing conversion of legacy tests.
  • Death test messages are clearly marked to make them more
    distinguishable from other messages.
  • Compatibility fixes for Android, Google Native Client, MinGW, HP UX,
    PowerPC, Lucid autotools, libCStd, Sun C++, Borland C++ Builder (Code Gear),
    IBM XL C++ (Visual Age C++), and C++0x.
  • Bug fixes and implementation clean-ups.
  • Potentially incompatible changes: disables the harmful 'make install'
    command in autotools.

Полная история версий.

Каких-то радикально новых возможностей вроде нет, но исправлено несколько неприятных багов.

Лично я очень ждал исправления мелких, но неприятных несовместимостей с компиляторами HP-UX, Sun и AIX.

Посты по теме и почти по теме:

UPDATE:

По ходу вышел еще и Google Mock 1.6.0.

Что нового тут:

  • Compilation is much faster and uses much less memory, especially
    when the constructor and destructor of a mock class are moved out of
    the class body.
  • New matchers: Pointwise(), Each().
  • New actions: ReturnPointee() and ReturnRefOfCopy().
  • CMake support.
  • Project files for Visual Studio 2010.
  • AllOf() and AnyOf() can handle up-to 10 arguments now.
  • Google Mock doctor understands Clang error messages now.
  • SetArgPointee<> now accepts string literals.
  • gmock_gen.py handles storage specifier macros and template return
    types now.
  • Compatibility fixes.
  • Bug fixes and implementation clean-ups.
  • Potentially incompatible changes: disables the harmful 'make install'
    command in autotools.

Полная история.

пятница, 16 апреля 2010 г.

Вышла новая версия Google Test 1.5.0

Сегодня вышла новая версия правильной библиотеки для unit-тестирования Google C++ Testing Framework 1.5.0.

Пока обзор будет краткий (фактически, это просто перевод официального анонса):
  • assert'ы теперь можно безопасно запускать из разных потоков (работает на платформах, где есть pthreads)
  • при использовании предикатов в EXPECT_TRUE() теперь можно самому задавать сообщения их ошибках
  • библиотеку теперь можно собрать как DLL (эту возможность многие ждали)
  • "упакованная" версия теперь входит состав дистрибутива, и ее не надо создавать самому через скрипт ("упакованная" версия - это просто два файла "gtest.h" и "gtest-all.cc", которые можно добавить в проект и не возиться с двоичной библиотекой)
  • система сборки теперь работает через CMake (это фантастически удобно)
  • добавлены две новые платформы: Solaris и AIX
  • убрана поддержка VC++ 7.1 с отключенными исключениями (если исключения включены, то все еще можно компилировать в VC++ 7.1)
Для тех, кто слышит про Google Test впервые, ниже предыдущие посты о Google Test и о тестировании в целом (многие на русском языке):

четверг, 15 октября 2009 г.

Введение в Google Mock (видео)

Данное видео будет хорошим дополнением к предыдущему посту про Google Mock для желающих освоить эту библиотеку.

вторник, 13 октября 2009 г.

Google C++ Mocking Framework для начинающих

В рамках проекта популяризации культуры разработки софта с активным использованием тестирования выложил перевод Google C++ Mocking for Dummies на русский язык - Google C++ Mocking Framework для начинающих.

Использование Mock-объектов является очень интересной темой. И владение ей позволяет перевести unit-тестирование на принципиально иной уровень.

Как рассказано в статье, языки программирования типа Python или Java благодаря встроенному механизму Reflection позволяют строить Mock-объекты почти автоматически. С++ не дает такой роскоши, но гугловцы проделали отличную работу, создав Google Mock. Практически все, что можно как-то упростить или автоматизировать в плане mock-дел в С++, сделано и сделано добротно.

Соглашусь, что поначалу вся эта тема с Mock-объектами выглядит несколько громоздко и сложновато, но тут как с эргономичной клавиатурой - надо сначала привыкнуть, а потом все окупится сполна.

Посты по теме: