Ваш вопрос двоякий. Как вы сами указали, выбор библиотеки для юнит-тестирования - это один вопрос. Да, я думаю, что GoogleTest просто отлично. Мне нравится это, потому что это чувствует себя легким с точки зрения использования. UnitTest ++ еще больше. Неважно, какой вы выберете.
У меня нет опыта работы с CruiseControl, но, учитывая ваши требования, я, вероятно, напишу сценарий для этой работы. Каждое требование может быть легко выполнено, по крайней мере, одним инструментом, поэтому просто склейте инструменты.
Если ваши отчеты не должны быть в HTML, XML, LaTeX или другом необычном формате, я бы использовал Bash. Тогда вы можете просто time
команды, sed
выход из двоичного файла unittest и так далее. Тем не менее, вы все равно можете выбрать Bash для более сложных форматов, если вы действительно любите Bash и привыкли к нему. Например, вы можете написать шаблон HTML для отчета с использованием заполнителей, а затем заменить заполнители данными.
Если ваши задачи более сложные, например, потому что вы хотите, чтобы скрипт запускался и на других платформах, то я бы, вероятно, использовал Ruby или Python. В Ruby, например, вы можете использовать Markaby для вывода вашего HTML. В любом случае, Bash, Ruby или Python отлично подходят для обработки текста или для этой задачи в целом. Я думаю, что вы могли бы создать небольшой сценарий, который бы выполнил эту работу в кратчайшие сроки.
Что приятно, если вы используете скрипт, то вы также можете прикрепить его как хук практически к любой современной системе контроля версий. Например, вы можете настроить хук Subversion или Git так, чтобы скрипт запускался при любом коммите.