Mutation Testing for Physical Computing
Physical computing, which builds interactive systems between the physical world and computers, has been widely used in a wide variety of domains and applications, e.g., the Internet of Things (IoT). Although physical computing has witnessed enormous realisations, testing these physical computing systems still faces many challenges, such as potential circuit related bugs which are not part of the software, timing issues which decrease testability, etc. Therefore, we propose a novel mutation testing approach for physical computing systems to enable engineers to judge the quality of their tests more accurately. To demonstrate the potential of our approach, (1) we define a set of mutation operators based on common errors that could happen in physical computing systems, and (2) we conduct a preliminary study on a popular embedded platform, namely Raspberry Pi.