Estou começando a escrever código C ++ para executar um robô e não sei como incorporar testes de unidade, se é que posso. Recebi uma biblioteca que permite a criação de "comandos" para o robô, que são agendados e executados automaticamente. O mecanismo para criar estes comandos é a subclasse uma classe base de comando que fornecem, e implementar virtuais void Initialize()
, void Execute()
e void End()
métodos. Essas funções são executadas apenas por seus efeitos colaterais, que fazem coisas com o robô (acionar motores, estender os pistões, etc.). Por causa disso, não vejo realmente nenhum lugar para anexar testes de unidade ao código, além de zombar de toda a biblioteca para que eu possa verificar os estados antes e depois virtuais do robô. Existe uma maneira de testar a unidade que não é excessivamente onerosa?
Editar
Eu acho que posso ter enganado a funcionalidade da biblioteca. A biblioteca fornece a maior parte da interface para o robô, bem como o sistema de comando / agendamento, por isso não é tão simples quanto zombar da classe base de comando, eu precisaria zombar de toda a interface do hardware. Infelizmente, simplesmente não tenho tempo para fazer isso.