Software Testing applied to the Development of IoT Systems: preliminary results
Resumo
Software testing is a fundamental activity of the broader software engineering process. Internet of Things (IoT) testing activities present unique characteristics that make their execution different from conventional software testing, including specific challenges, tools, approaches, and processes. Although the literature contains several secondary studies that summarize the contributions on this topic, there still needs to be more organization of these studies along a software development process. This paper reports preliminary literature results showing how the knowledge about software testing has been applied to developing and using IoT systems. We conducted an initial search on known papers’ databases in computing and supplemented this search by snowballing two literature reviews found in this previous search. This study’s main results show that most approaches and tools for software testing on IoT systems are grouped in the stages of Validation by Emulation or Simulation with approximately 43% of the total of papers, followed by Validation by Testbed with approximately 24%. Hence, there is an opportunity for exploring further the Development and Operation/Support stages. Our results will help researchers and practitioners know when and in what sequence to use techniques, processes, and test tools reported in the literature.