Skip to main content
Top

2019 | OriginalPaper | Chapter

Do Null-Type Mutation Operators Help Prevent Null-Type Faults?

Authors : Ali Parsai, Serge Demeyer

Published in: SOFSEM 2019: Theory and Practice of Computer Science

Publisher: Springer International Publishing

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

The null-type is a major source of faults in Java programs, and its overuse has a severe impact on software maintenance. Unfortunately traditional mutation testing operators do not cover null-type faults by default, hence cannot be used as a preventive measure. We address this problem by designing four new mutation operators which model null-type faults explicitly. We show how these mutation operators are capable of revealing the missing tests, and we demonstrate that these mutation operators are useful in practice. For the latter, we analyze the test suites of 15 open-source projects to describe the trade-offs related to the adoption of these operators to strengthen the test suite.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literature
3.
go back to reference Bradbury, J.S., Cordy, J.R., Dingel, J.: Mutation operators for concurrent Java (J2SE 5.0). In: MUTATION 2006, Proceedings of the Second Workshop on Mutation Analysis (Mutation 2006 - ISSRE Workshops 2006), School of Computing, Queen’s University, Kingston, p. 11. IEEE, Washington, DC, November 2006. https://doi.org/10.1109/mutation.2006.10 Bradbury, J.S., Cordy, J.R., Dingel, J.: Mutation operators for concurrent Java (J2SE 5.0). In: MUTATION 2006, Proceedings of the Second Workshop on Mutation Analysis (Mutation 2006 - ISSRE Workshops 2006), School of Computing, Queen’s University, Kingston, p. 11. IEEE, Washington, DC, November 2006. https://​doi.​org/​10.​1109/​mutation.​2006.​10
4.
go back to reference Coles, H., Laurent, T., Henard, C., Papadakis, M., Ventresque, A.: PIT: a practical mutation testing tool for Java (Demo). In: Proceedings of the 25th International Symposium on Software Testing and Analysis - ISSTA 2016, pp. 449–452. ACM Press, New York (2016). https://doi.org/10.1145/2931037.2948707 Coles, H., Laurent, T., Henard, C., Papadakis, M., Ventresque, A.: PIT: a practical mutation testing tool for Java (Demo). In: Proceedings of the 25th International Symposium on Software Testing and Analysis - ISSTA 2016, pp. 449–452. ACM Press, New York (2016). https://​doi.​org/​10.​1145/​2931037.​2948707
7.
go back to reference Ferrari, F.C., Maldonado, J., Rashid, A.: Mutation testing for aspect-oriented programs. In: 2008 International Conference on Software Testing, Verification, and Validation. ICST 2008, Department of Computer System, Sao Paulo University, Sao Carlos, pp. 52–61. IEEE, Washington, DC, April 2008. https://doi.org/10.1109/icst.2008.37 Ferrari, F.C., Maldonado, J., Rashid, A.: Mutation testing for aspect-oriented programs. In: 2008 International Conference on Software Testing, Verification, and Validation. ICST 2008, Department of Computer System, Sao Paulo University, Sao Carlos, pp. 52–61. IEEE, Washington, DC, April 2008. https://​doi.​org/​10.​1109/​icst.​2008.​37
8.
go back to reference Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston (1999)MATH Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston (1999)MATH
10.
go back to reference Gligoric, M., Groce, A., Zhang, C., Sharma, R., Alipour, M.A., Marinov, D.: Comparing non-adequate test suites using coverage criteria. In: Proceedings of the 2013 International Symposium on Software Testing and Analysis - ISSTA 2013, pp. 302–313. ACM Press, New York (2013). https://doi.org/10.1145/2483760.2483769 Gligoric, M., Groce, A., Zhang, C., Sharma, R., Alipour, M.A., Marinov, D.: Comparing non-adequate test suites using coverage criteria. In: Proceedings of the 2013 International Symposium on Software Testing and Analysis - ISSTA 2013, pp. 302–313. ACM Press, New York (2013). https://​doi.​org/​10.​1145/​2483760.​2483769
11.
go back to reference Gosling, J., Joy, B., Steele, G., Bracha, G., Buckley, A.: The Java Language Specification (Java SE). Oracle, 8th edn. Addison-Wesley, Boston (2014) Gosling, J., Joy, B., Steele, G., Bracha, G., Buckley, A.: The Java Language Specification (Java SE). Oracle, 8th edn. Addison-Wesley, Boston (2014)
12.
14.
go back to reference Just, R., Jalali, D., Inozemtseva, L., Ernst, M.D., Holmes, R., Fraser, G.: Are mutants a valid substitute for real faults in software testing? In: Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering - FSE 2014, pp. 654–665. ACM Press, New York (2014). https://doi.org/10.1145/2635868.2635929 Just, R., Jalali, D., Inozemtseva, L., Ernst, M.D., Holmes, R., Fraser, G.: Are mutants a valid substitute for real faults in software testing? In: Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering - FSE 2014, pp. 654–665. ACM Press, New York (2014). https://​doi.​org/​10.​1145/​2635868.​2635929
20.
23.
go back to reference Oliveira, R.A., Alegroth, E., Gao, Z., Memon, A.: Definition and evaluation of mutation operators for GUI-level mutation analysis. In: 2015 IEEE Eighth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), pp. 1–10. IEEE, April 2015. https://doi.org/10.1109/icstw.2015.7107457 Oliveira, R.A., Alegroth, E., Gao, Z., Memon, A.: Definition and evaluation of mutation operators for GUI-level mutation analysis. In: 2015 IEEE Eighth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), pp. 1–10. IEEE, April 2015. https://​doi.​org/​10.​1109/​icstw.​2015.​7107457
24.
go back to reference Osman, H., Leuenberger, M., Lungu, M., Nierstrasz, O.: Tracking null checks in open-source java systems. In: 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER), vol. 1, pp. 304–313. IEEE, March 2016. https://doi.org/10.1109/saner.2016.57 Osman, H., Leuenberger, M., Lungu, M., Nierstrasz, O.: Tracking null checks in open-source java systems. In: 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER), vol. 1, pp. 304–313. IEEE, March 2016. https://​doi.​org/​10.​1109/​saner.​2016.​57
26.
go back to reference Papadakis, M., Henard, C., Harman, M., Jia, Y., Traon, Y.L.: Threats to the validity of mutation-based test assessment. In: Proceedings of the 25th International Symposium on Software Testing and Analysis - ISSTA 2016, pp. 354–365. ACM Press, New York (2016). https://doi.org/10.1145/2931037.2931040 Papadakis, M., Henard, C., Harman, M., Jia, Y., Traon, Y.L.: Threats to the validity of mutation-based test assessment. In: Proceedings of the 25th International Symposium on Software Testing and Analysis - ISSTA 2016, pp. 354–365. ACM Press, New York (2016). https://​doi.​org/​10.​1145/​2931037.​2931040
30.
go back to reference Parsai, A., Murgia, A., Demeyer, S.: Evaluating random mutant selection at class-level in projects with non-adequate test suites. In: Proceedings of the 20th International Conference on Evaluation and Assessment in Software Engineering - EASE 2016, pp. 11:1–11:10. ACM Press, New York (2016). https://doi.org/10.1145/2915970.2915992 Parsai, A., Murgia, A., Demeyer, S.: Evaluating random mutant selection at class-level in projects with non-adequate test suites. In: Proceedings of the 20th International Conference on Evaluation and Assessment in Software Engineering - EASE 2016, pp. 11:1–11:10. ACM Press, New York (2016). https://​doi.​org/​10.​1145/​2915970.​2915992
31.
go back to reference Parsai, A., Murgia, A., Demeyer, S.: A model to estimate first-order mutation coverage from higher-order mutation coverage. In: 2016 IEEE International Conference on Software Quality, Reliability and Security (QRS), pp. 365–373. IEEE, August 2016. https://doi.org/10.1109/qrs.2016.48 Parsai, A., Murgia, A., Demeyer, S.: A model to estimate first-order mutation coverage from higher-order mutation coverage. In: 2016 IEEE International Conference on Software Quality, Reliability and Security (QRS), pp. 365–373. IEEE, August 2016. https://​doi.​org/​10.​1109/​qrs.​2016.​48
33.
35.
go back to reference Schuler, D., Zeller, A.: Javalanche: efficient mutation testing for Java. In: Proceedings of the 7th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering on European Software Engineering Conference and Foundations of Software Engineering Symposium - ESEC/FSE 2009, pp. 297–298. ACM Press, New York (2009). https://doi.org/10.1145/1595696.1595750 Schuler, D., Zeller, A.: Javalanche: efficient mutation testing for Java. In: Proceedings of the 7th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering on European Software Engineering Conference and Foundations of Software Engineering Symposium - ESEC/FSE 2009, pp. 297–298. ACM Press, New York (2009). https://​doi.​org/​10.​1145/​1595696.​1595750
36.
go back to reference Yin, R.K.: Case Study Research: Design and Methods. Applied Social Research Methods. SAGE Publications, Thousand Oaks (2003) Yin, R.K.: Case Study Research: Design and Methods. Applied Social Research Methods. SAGE Publications, Thousand Oaks (2003)
Metadata
Title
Do Null-Type Mutation Operators Help Prevent Null-Type Faults?
Authors
Ali Parsai
Serge Demeyer
Copyright Year
2019
DOI
https://doi.org/10.1007/978-3-030-10801-4_33

Premium Partner