Fault Injection in Android Applications

Adélia Helena Valentim Gonçalves · Open Repository of the University of Porto (University of Porto) · 2019

The use of mobile phones is widespread, and more and more time is spent on mobile phones.With the widespread use of mobile phones, the mobile applications available in app stores also increase.There is a growing reliance on mobile applications.The availability of these applications is made at a fast pace and seeking to make development cost-effective.The consequence of this is often the disregard for the quality of the final product.Ensuring the quality of the applications allows to ensure the satisfaction of the end customer and their loyalty.It can avoid serious financial and human consequences.To promote the quality of the software, it is necessary to test the software ensuring that it does what is expected, working properly with a high level of quality.Mutation testing is a technique for injecting faults into code implementation.Each of the faults produced represents a mutant.The execution of these tests makes it possible, in a reliable way, to guarantee the quality and effectiveness of a test suite or testing tool.The goal is to assess the quality of a test suite (or testing tool) by checking if it allows to distinguish the result of the original code compared with the result of each mutant (if it kills the mutants).The present work aims to define some mutation operators able to reproduce real failures in real Android mobile applications.It extends an existing tool that allows to automate the injection of some mutants.After generating the mutants it will be possible to assess the quality of a testing tool calculating the mutation score (percentage of mutants killed by the testing tool).As a final goal, ensure, therefore, the increase in the quality of the mobile applications made available.

Read the paper · More papers on PaperTik