Soy miembro del club de robótica de mi escuela secundaria y soy responsable de programar el robot. Una sugerencia que sigo escuchando de varios adultos es que debería escribir pruebas unitarias para ayudar a validar mi código. La base del código se está volviendo un poco grande, y estoy de acuerdo en que las pruebas unitarias serían realmente útiles para ayudarme a detectar errores más rápido.
Sin embargo, no estoy completamente seguro de cómo podría lograr esto. Hasta donde sé, la prueba de la unidad se realiza tomando una función (o un subsistema del código) y alimentándola con un conjunto de entrada para asegurarse de que salga con la misma salida cada vez. El código que tengo actualmente no hace un gran procesamiento de datos, sino que manipula directamente los componentes de hardware en el robot. La mayor parte de la complejidad proviene de asegurarse de que los componentes electrónicos sean sólidos, que el código en este momento coincida con el hardware real del robot, etc. Muchas veces, solo puedo ver si hay un problema al cargar el código en el robot, e intentando ejecutarlo.
Por extensión, ¿cómo pueden escribirse las pruebas unitarias para el código destinado a operar cualquier dispositivo mecánico? Me parece que solo puede detectar errores al observar físicamente el funcionamiento de la máquina.
¿O simplemente estoy malinterpretando cómo deberían funcionar las pruebas unitarias?
( Si es importante, aquí está el código , está escrito en C ++ y estoy participando en FRC )
fuente