Fuzz testing aplicado en máquinas de estado jerárquicas de Smach para pruebas de comportamientos robóticos
Tesis
Access note
Acceso abierto
Publication date
2022Metadata
Show full item record
Cómo citar
Bergel, Alexandre
Cómo citar
Fuzz testing aplicado en máquinas de estado jerárquicas de Smach para pruebas de comportamientos robóticos
Author
Professor Advisor
Abstract
La robótica como disciplina ha aumentando considerablemente su desarrollo en la ultima
década. Una de las principales razones de este aumento han sido los bajos costos de ventas y su
uso en la vida diaria. Este aumento de uso también fomentó la creación de robots con mayores
niveles de autonomía, haciéndolos cada vez mas independientes de las acciones de usuarios
u operadores. Al minimizar la supervisión del robot mientras realiza sus comportamiento,
se aumenta el riesgo de generar situaciones de peligro, ya sea para el robot o los usuarios.
Ejecutar un comportamiento robótico no es una tarea instantánea, esta puede tomar un
tiempo considerable dependiendo de la cantidad de operaciones que realice el robot. Estas
operaciones podrían conllevar una situación de riesgo, por ello es necesario realizar pruebas
para comprobar que el comportamiento robótico es seguro y libre de errores en diferentes
escenarios. Realizar pruebas a un comportamiento robótico con un robot real es una tarea que
consume tiempo y es potencialmente peligrosa, ya que se debe ejecutar el comportamiento
robótico, por lo que el uso de simuladores es una practica común para realizar pruebas
tempranas del comportamiento y asegurar que el robot se comportara bien en casos ideales.
Este trabajo de tesis propone una metodología que permite encontrar errores en fases tempranas del desarrollo de un comportamiento robótico, utilizando técnicas de fuzz testing para
generar variados contextos de pruebas para los comportamientos. La metodología permite
ir ajustando manualmente el contexto para poder generar datos cada vez mas ajustados a
contextos reales. Estas pruebas son realizadas al modelo de máquina de estados que representa a un comportamiento robótico y las pruebas son realizadas a cada estado por separado
para comprobar su correctitud individualmente. Esta metodología también permite realizar
las pruebas sin tener un conocimiento acabado del comportamiento, solo basta con realizar
inspecciones visuales al código para extraer la información necesaria.
Para desarrollar este trabajo se utilizó el software del equipo de robótica de la Universidad
de Chile, UChile Peppers como fuente de pruebas para evaluar esta metodología, encontrando
situaciones donde los comportamientos generaban errores o situaciones no esperadas. A través
de un cuestionario se permitió obtener información sobre el error encontrado, aceptándolo o
descartándolo como error por parte del mismo equipo de desarrollo del software.
Por último, un análisis detallado de las respuestas del cuestionario aplicado junto a apreciaciones del autor de este trabajo indican que el uso de fuzz testing en comportamientos
robóticos es una herramienta útil que permite encontrar errores que pueden generarse en una
ejecución del comportamiento robótico.
xmlui.dri2xhtml.METS-1.0.item-notadetesis.item
Tesis para optar al grado de Magíster en Ciencias, Mención Computación Memoria para optar al título de Ingeniero Civil en Computación
Identifier
URI: https://repositorio.uchile.cl/handle/2250/185690
Collections
The following license files are associated with this item: