Backend & ИИ

Что такое CMake и CTest (сборка и тесты)

Что это

CMake собирает программу на C++ одной командой на Linux, macOS и Windows, CTest запускает её тесты. Для заказчика это значит: код собирается не только на компьютере разработчика, а формулы проверены.

Как используем

Библиотека расчёта развёртки коробок FEFCO для производителя упаковки собирается CMake и подключается к программе производства как обычная библиотека. Тесты формул, раскладки и проверки ввода идут через CTest.

Где это нужно бизнесу

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

Как мы это используем

Библиотека расчёта развёртки коробок FEFCO для производителя упаковки собирается CMake 3.14 и новее на Linux, macOS и Windows, без внешних зависимостей. Одна команда собирает библиотеку, утилиту для ручных расчётов и тесты. Тесты формул, раскладки, проверки ввода и разбора кода стиля запускаются через CTest. Эталонные значения — коробка 300×200×150 мм из картона 3 мм даёт заготовку 1047×356 мм — проверены запуском кода.

Расчётные сервисы для производства — в разделе Автоматизация.

Типичные проблемы

  • Расчёты в таблицах. До библиотеки ошибки давали формулы в таблицах: толщину картона легко забыть, у каждого стиля своя формула. Код с тестами такие ошибки ловит до резки.
  • Тест проверяет формулу, а не завод. Припуск на биговку — приближение, его сверяют с оснасткой конкретного производства.

Когда это не нужно

Для скриптов на Python и ботов CMake не нужен: у них свои инструменты сборки и тестов.

← Все термины

Нужен сайт, бот или автоматизация?

Термины объяснили — теперь давайте к делу: расскажите о задаче, а мы переведём её на понятный план работ.