Skip to main content
Erschienen in: Software Quality Journal 2/2020

13.09.2019

Enhanced regression testing technique for agile software development and continuous integration strategies

verfasst von: Sadia Ali, Yaser Hafeez, Shariq Hussain, Shunkun Yang

Erschienen in: Software Quality Journal | Ausgabe 2/2020

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

To survive in competitive marketplaces, most organizations have adopted agile methodologies to facilitate continuous integration and faster application delivery and rely on regression testing during application development to validate the quality and reliability of the software after changes have been made. Consequently, for large projects with cost and time constraints, it is extremely difficult to determine which test cases to run at the end of each release. In this paper, a test case prioritization and selection approach is proposed to improve the quality of releases. From existing literature, we analyzed prevailing problems and proposed solution relevant to regression testing in agile practices. The proposed approach is based on two phases. First, test cases are prioritized by clustering those test cases that frequently change. In case of a tie, test cases are prioritized based on their respective failure frequencies and coverage criteria. Second, test cases with a higher frequency of failure or coverage criteria are selected. The proposed technique was validated by an empirical study on three industrial subjects. The results show that the method successfully selects an optimal test suite and increases the fault detection rate (i.e., more than 90% in the case of proposed technique and less than 50% in other techniques), which reduces the number of irrelevant test cases and avoids detecting duplicate faults. The results of evaluation metrics illustrate that the proposed technique significantly outperform (i.e., between 91 and 97%) as compared to other existing regression testing techniques (i.e., between 52 and 68%). Therefore, our model enhances the test case prioritization and selection with the ability for earlier and high fault detection. Thus, pruning out irrelevant test cases and redundant faults and enhancing the regression testing process for agile applications.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

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!

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!

Literatur
Zurück zum Zitat Agren, S. M., Knauss, E., Heldal, R., Pelliccione, P., Malmqvist, G., & Boden, J. (2018). The manager perspective on requirements impact on automotive systems development speed. 2018 IEEE 26th International Requirements Engineering Conference (RE), 17–28. https://doi.org/10.1109/RE.2018.00-55. Agren, S. M., Knauss, E., Heldal, R., Pelliccione, P., Malmqvist, G., & Boden, J. (2018). The manager perspective on requirements impact on automotive systems development speed. 2018 IEEE 26th International Requirements Engineering Conference (RE), 17–28. https://​doi.​org/​10.​1109/​RE.​2018.​00-55.
Zurück zum Zitat Aman, H., Nakano, T., Ogasawara, H., & Kawahara, M. (2018). A topic model and test history-based test case recommendation method for regression testing. 2018 IEEE international conference on software testing, verification and validation workshops (ICSTW), 392–397. https://doi.org/10.1109/ICSTW.2018.00079. Aman, H., Nakano, T., Ogasawara, H., & Kawahara, M. (2018). A topic model and test history-based test case recommendation method for regression testing. 2018 IEEE international conference on software testing, verification and validation workshops (ICSTW), 392–397. https://​doi.​org/​10.​1109/​ICSTW.​2018.​00079.
Zurück zum Zitat Elbaum, S., Rothermel, G., & Penix, J. (2014). Techniques for improving regression testing in continuous integration development environments. Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering - FSE 2014, 235–245. https://doi.org/10.1145/2635868.2635910. Elbaum, S., Rothermel, G., & Penix, J. (2014). Techniques for improving regression testing in continuous integration development environments. Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering - FSE 2014, 235–245. https://​doi.​org/​10.​1145/​2635868.​2635910.
Zurück zum Zitat Fischer, S., Lopez-Herrejon, R. E., & Egyed, A. (2018). Towards a fault-detection benchmark for evaluating software product line testing approaches. Proceedings of the 33rd Annual ACM Symposium on Applied Computing - SAC ‘18, 2034–2041. https://doi.org/10.1145/3167132.3167350. Fischer, S., Lopez-Herrejon, R. E., & Egyed, A. (2018). Towards a fault-detection benchmark for evaluating software product line testing approaches. Proceedings of the 33rd Annual ACM Symposium on Applied Computing - SAC ‘18, 2034–2041. https://​doi.​org/​10.​1145/​3167132.​3167350.
Zurück zum Zitat Kandil, P., Moussa, S., & Badr, N. (2016). Cluster-based test cases prioritization and selection technique for agile regression testing: cluster-based technique for agile regression testing. Journal of Software: Evolution and Process, 29(6), e1794. https://doi.org/10.1002/smr.1794.CrossRef Kandil, P., Moussa, S., & Badr, N. (2016). Cluster-based test cases prioritization and selection technique for agile regression testing: cluster-based technique for agile regression testing. Journal of Software: Evolution and Process, 29(6), e1794. https://​doi.​org/​10.​1002/​smr.​1794.CrossRef
Zurück zum Zitat Knauss, E., Staron, M., Meding, W., Soder, O., Nilsson, A., & Castell, M. (2015). Supporting continuous integration by code-churn based test selection. 2015 IEEE/ACM 2nd International Workshop on Rapid Continuous Software Engineering, 19–25. https://doi.org/10.1109/RCoSE.2015.11. Knauss, E., Staron, M., Meding, W., Soder, O., Nilsson, A., & Castell, M. (2015). Supporting continuous integration by code-churn based test selection. 2015 IEEE/ACM 2nd International Workshop on Rapid Continuous Software Engineering, 19–25. https://​doi.​org/​10.​1109/​RCoSE.​2015.​11.
Zurück zum Zitat Lachmann, R., Lity, S., Lischke, S., Beddig, S., Schulze, S., & Schaefer, I. (2015). Delta-oriented test case prioritization for integration testing of software product lines. Proceedings of the 19th international conference on software product line - SPLC ‘15, 81–90. https://doi.org/10.1145/2791060.2791073. Lachmann, R., Lity, S., Lischke, S., Beddig, S., Schulze, S., & Schaefer, I. (2015). Delta-oriented test case prioritization for integration testing of software product lines. Proceedings of the 19th international conference on software product line - SPLC ‘15, 81–90. https://​doi.​org/​10.​1145/​2791060.​2791073.
Zurück zum Zitat Lu, Y., Lou, Y., Cheng, S., Zhang, L., Hao, D., Zhou, Y., & Zhang, L. (2016). How does regression test prioritization perform in real-world software evolution? Proceedings of the 38th International Conference on Software Engineering - ICSE ‘16, 535–546. https://doi.org/10.1145/2884781.2884874. Lu, Y., Lou, Y., Cheng, S., Zhang, L., Hao, D., Zhou, Y., & Zhang, L. (2016). How does regression test prioritization perform in real-world software evolution? Proceedings of the 38th International Conference on Software Engineering - ICSE ‘16, 535–546. https://​doi.​org/​10.​1145/​2884781.​2884874.
Zurück zum Zitat Magalhães, C., Andrade, J., Perrusi, L., & Mota, A. (2017). Evaluating an automatic text-based test case selection using a non-instrumented code coverage analysis. Proceedings of the 2nd Brazilian Symposium on Systematic and Automated Software Testing - SAST, 1–9. https://doi.org/10.1145/3128473.3128478. Magalhães, C., Andrade, J., Perrusi, L., & Mota, A. (2017). Evaluating an automatic text-based test case selection using a non-instrumented code coverage analysis. Proceedings of the 2nd Brazilian Symposium on Systematic and Automated Software Testing - SAST, 1–9. https://​doi.​org/​10.​1145/​3128473.​3128478.
Zurück zum Zitat Ouni, A., Kessentini, M., ÓCinnéide, M., Sahraoui, H., Deb, K., & Inoue, K. (2017). MORE: a multi-objective refactoring recommendation approach to introducing design patterns and fixing code smells: MORE: a multi-objective refactoring recommendation approach. Journal of Software: Evolution and Process, 29(5), e1843. https://doi.org/10.1002/smr.1843.CrossRef Ouni, A., Kessentini, M., ÓCinnéide, M., Sahraoui, H., Deb, K., & Inoue, K. (2017). MORE: a multi-objective refactoring recommendation approach to introducing design patterns and fixing code smells: MORE: a multi-objective refactoring recommendation approach. Journal of Software: Evolution and Process, 29(5), e1843. https://​doi.​org/​10.​1002/​smr.​1843.CrossRef
Zurück zum Zitat Shin, S. Y., Nejati, S., Sabetzadeh, M., Briand, L. C., & Zimmer, F. (2018). Test case prioritization for acceptance testing of cyber physical systems: a multi-objective search-based approach. Proceedings of the 27th ACM SIGSOFT International Symposium on Software Testing and Analysis - ISSTA 2018, 49–60. https://doi.org/10.1145/3213846.3213852. Shin, S. Y., Nejati, S., Sabetzadeh, M., Briand, L. C., & Zimmer, F. (2018). Test case prioritization for acceptance testing of cyber physical systems: a multi-objective search-based approach. Proceedings of the 27th ACM SIGSOFT International Symposium on Software Testing and Analysis - ISSTA 2018, 49–60. https://​doi.​org/​10.​1145/​3213846.​3213852.
Zurück zum Zitat Spieker, H., Gotlieb, A., Marijan, D., & Mossige, M. (2017). Reinforcement learning for automatic test case prioritization and selection in continuous integration. Proceedings of the 26th ACM SIGSOFT International Symposium on Software Testing and Analysis - ISSTA 2017, 12–22. https://doi.org/10.1145/3092703.3092709. Spieker, H., Gotlieb, A., Marijan, D., & Mossige, M. (2017). Reinforcement learning for automatic test case prioritization and selection in continuous integration. Proceedings of the 26th ACM SIGSOFT International Symposium on Software Testing and Analysis - ISSTA 2017, 12–22. https://​doi.​org/​10.​1145/​3092703.​3092709.
Zurück zum Zitat Wang, X., & Zeng, H. (2016). History-based dynamic test case prioritization for requirement properties in regression testing. Proceedings of the International Workshop on Continuous Software Evolution and Delivery - CSED ‘16, 41–47. https://doi.org/10.1145/2896941.2896949. Wang, X., & Zeng, H. (2016). History-based dynamic test case prioritization for requirement properties in regression testing. Proceedings of the International Workshop on Continuous Software Evolution and Delivery - CSED ‘16, 41–47. https://​doi.​org/​10.​1145/​2896941.​2896949.
Metadaten
Titel
Enhanced regression testing technique for agile software development and continuous integration strategies
verfasst von
Sadia Ali
Yaser Hafeez
Shariq Hussain
Shunkun Yang
Publikationsdatum
13.09.2019
Verlag
Springer US
Erschienen in
Software Quality Journal / Ausgabe 2/2020
Print ISSN: 0963-9314
Elektronische ISSN: 1573-1367
DOI
https://doi.org/10.1007/s11219-019-09463-4

Weitere Artikel der Ausgabe 2/2020

Software Quality Journal 2/2020 Zur Ausgabe

EditorialNotes

In this issue

Premium Partner