ROSMutation: Mutation Based Automated Testing for ROS Compatible Robotic Software


YAYAN U.

ADVANCES IN ELECTRICAL AND COMPUTER ENGINEERING, cilt.23, sa.3, ss.47-56, 2023 (SCI-Expanded) identifier identifier

  • Yayın Türü: Makale / Tam Makale
  • Cilt numarası: 23 Sayı: 3
  • Basım Tarihi: 2023
  • Doi Numarası: 10.4316/aece.2023.03006
  • Dergi Adı: ADVANCES IN ELECTRICAL AND COMPUTER ENGINEERING
  • Derginin Tarandığı İndeksler: Science Citation Index Expanded (SCI-EXPANDED), Scopus, Aerospace Database, Communication Abstracts, INSPEC, Metadex, Directory of Open Access Journals
  • Sayfa Sayıları: ss.47-56
  • Anahtar Kelimeler: robot operating system, mutation testing, software robustness, fault injection, automated software testing
  • Eskişehir Osmangazi Üniversitesi Adresli: Evet

Özet

Ensuring the safety, security, robustness, and fault tolerance of advanced robotic systems is essential for various fields, including healthcare, industry, and space. To address these issues, it is necessary to use software testing techniques and standards, similar to those applied in other safety-critical applications. The Robot Operating System (ROS) is a popular choice for developing robotic systems, so it is important to have specialized testing libraries and methods for it. In this study, a novel mutation testing library for ROS was developed and integrated it into the automated/tailored mutation-based software fault injection tool (IM-FIT). IM-FIT is an open-source automated software testing tool that is used to evaluate the software robustness of safety-critical systems using mutation-based tests. The proposed ROSMutation library mutates ROS-specific code snippets (publisher, subscriber, params, services, etc.) in the Python code within ROS-compatible software packages using IM-FIT. We evaluated the effectiveness of the ROSMutation library in two scenarios (basic and advanced), applying it to ROS-compatible code through IM-FIT and measuring its ability to assess the software robustness of ROS-compatible and Python-based software packages. The results showed that the ROSMutation library is effective in evaluating software robustness criteria for ROS-compatible and Python based software.