Вы не можете высмеивать не виртуальные функции с помощью gmock.Итак, первая альтернатива, которую следует рассмотреть, - это сделать функции виртуальными.Если вас беспокоит снижение производительности при виртуализации функций, убедитесь, что это действительно проблема (путем измерения), потому что обычно это не так.
Альтернативное решение, если нет возможности сделать функцииВиртуальный это использовать шаблоны.См. этот вопрос для подробностей об этой технике и этот вопрос о плюсах и минусах использования.