Инструменты - PO-21/QtReports GitHub Wiki

Для документирования исходных кодов проекта используется система doxygen

Doxygen — это кроссплатформенная система документирования исходных текстов, которая поддерживает большое количество языков программирования.

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

Doxygen имеет встроенную поддержку генерации документации в формате HTML, LAΤΕΧ, man, RTF и XML. Также вывод может быть легко сконвертирован в CHM, PostScript, PDF.

Doxygen - гибкая система с большим количеством параметров позволяющих проводить широкую настройку документации.

Комментарии к коду записываются внутри специальной структуры:

/*! Эта структура позволяет писать несколько строк комментариев */

/*! @~russian - язык отображаемого текта

@param[in] name Имя параметра - описание параметра функции

@param[out] result Значение параметра

*/

Для автоматического тестирования, сборок проекта используется Travic CI

Travis CI — распределённый веб-сервис для сборки и тестирования программного обеспечения.

Веб-сервис поддерживает сборку проектов на множестве языков, включая C, C++, D, JavaScript, Java, PHP, Python и Ruby. Разные проекты с открытым исходным кодом используют Travis CI для непрерывной интеграции кода.

Сценарий сборки смотри в файле "travis.yml".

Для тестирования, поиска багов в проекте используется Qt Test Framework

Инструмент предоставляет нам набор макросов для тестирования. Используется метод проведения тестов подразумевающий заведения тестового проекта в дочерней директории нашего проекта и тестирования в нем.(tests/qtreportslib_tests/)

Пример из файла main.cpp : result |= QTest::qExec( new Test_Parser, argc, argv )

Для оценки покрытия кода используется Coveralls

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

Проверят покрытия кода написанного на языка: Ruby, Python, PHP, Node.js, C/C++, Scala.

Сборку производит на : Travis CI, Travis Pro, CircleCI, Jenkins, Semaphore, or Codeship.

Для общения разработчиков используется Gitter

Социальная сеть для разработчиков.