Во-первых, вам понадобится среда модульного тестирования. В прошлом я использовал UnitTest ++ и Google Test . Первый очень легкий, а второй - более функциональный, но несколько более громоздкий. Он хорошо интегрируется с Google Mock, если вам когда-нибудь понадобятся подобные вещи. Есть, конечно, много других вариантов: см. Этот список (автором возможного UnitTest ++) и Википедию, например.
Модульное тестирование - это написание целенаправленных тестов для выделения отдельных изолированных независимых фрагментов кода («блоков») в различных сценариях. Хотя в некоторых случаях вы можете модульное тестирование все, что, как правило, не практично, чтобы достичь 100% охвата и, особенно в играх, может быть довольно трудно - это спорно или нет модульного тестирования Вашего выход визуализатора в любом случае содержательный, полезный, или «истинный» модульный тест независимо.
Важно помнить, что любое (автоматическое) тестирование лучше, чем никакое (автоматическое) тестирование. Поэтому вам не следует особо подчеркивать тот факт, что ваши тесты не являются «настоящими модульными тестами», и гордиться тем, что у вас просто есть тесты. Фреймворки модульного тестирования обычно полезны для создания более слабых, «неуниверсальных» тестов, поскольку они включают в себя функциональность для единообразных тестов пакетов и отчетов о сбоях.
Я бы посоветовал вам воскресить ваши старые тесты и встроить их в тестовый проект, используя одну из доступных платформ - что-то, что вы можете легко запускать время от времени (или автоматически как часть сборки выпуска или интеграции), которая выполняет все ваши тесты. Напишите новые тесты для фрагментов кода, поскольку станет очевидно, что они будут полезны для вас, например, если вы обнаружите небольшую ошибку, которую вы могли бы обнаружить с помощью теста, вы можете добавить один, чтобы отследить любые регрессии, которые вы можете сделать в будущем.
Вы, вероятно, обнаружите, что в основном это ваш служебный код более низкого уровня, который можно использовать для юнит-тестирования в играх. Это хорошо - это базовый код, который может нарушить многие более высокие уровни, если он сломается.
Вы не пойдете в чистилище программиста за то, что у вас нет тестов для каждой маленькой функции и логических элементов в вашей кодовой базе, поэтому не тратьте больше времени, чем вам нужно на написание тестов. Если вам нужно больше думать или тратить значительно больше времени на написание тестов для модуля, чем на то, чтобы сначала написать его, вы можете тратить свое время. Модульное тестирование - тестирование в целом - это инструмент, который вы научитесь правильно использовать, чтобы помочь вам, а не рутинная работа, которую вы должны выполнить для всего.