Инструменты - 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
Для общения разработчиков используетсяСоциальная сеть для разработчиков.