Sto iniziando a scrivere codice C ++ per eseguire un robot e non so come incorporare i test unitari, se davvero posso. Mi è stata fornita una libreria che consente la creazione di "comandi" per il robot, che vengono automaticamente programmati ed eseguiti. Il meccanismo per creare questi comandi è alla sottoclasse una classe base comando prevedono, e attuare virtuali void Initialize()
, void Execute()
e void End()
metodi. Queste funzioni sono eseguite esclusivamente per i loro effetti collaterali, che fanno cose al robot (far funzionare i motori, estendere i pistoni, ecc.). Per questo motivo, in realtà non vedo da nessuna parte allegare test unitari al codice, a parte deridere l'intera libreria in modo da poter controllare gli stati virtuali prima e dopo del robot. C'è un modo per testare l'unità che non è eccessivamente oneroso?
modificare
Penso che potrei essere stato fuorviante sulla funzionalità della biblioteca. La libreria fornisce la maggior parte dell'interfaccia per il robot e il sistema di comando / pianificazione, quindi non è così semplice come deridere la classe base di comando, dovrei deridere l'intera interfaccia per l'hardware. Purtroppo non ho il tempo di farlo.