Skip to main content
Erschienen in: Empirical Software Engineering 1/2023

01.01.2023

Smells in system user interactive tests

verfasst von: Renaud Rwemalika, Sarra Habchi, Mike Papadakis, Yves Le Traon, Marie-Claude Brasseur

Erschienen in: Empirical Software Engineering | Ausgabe 1/2023

Einloggen

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

search-config
loading …

Abstract

Test smells are known as bad development practices that reflect poor design and implementation choices in software tests. Over the last decade, there are few attempts to study test smells in the context of system tests that interact with the System Under Test through a Graphical User Interface. To fill the gap, we conduct an exploratory analysis of test smells occurring in System User Interactive Tests (SUIT). We thus, compose a catalog of 35 SUIT-specific smells, identified through a multi-vocal literature review, and show how they differ from smells encountered in unit tests. We also conduct an empirical analysis to assess the diffuseness and removal of these smells in 48 industrial repositories and 12 open-source projects. Our results show that the same type of smells tends to appear in both industrial and open-source projects, but they are not addressed in the same way. We also find that smells originating from a combination of multiple code locations appear more often than those that are localized on a single line. This happens because of the difficulty to observe non-local smells without tool support. Furthermore, we find that smell-removing actions are not frequent with less than 50% of the affected tests ever undergoing a smell removal. Interestingly, while smell-removing actions are rare, some smells disappear while discarding tests, i.e., these smells do not appear in follow-up tests that replace the discarded ones.

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 "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+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!

Literatur
Zurück zum Zitat Alegroth E, Steiner M, Martini A (2016) Exploring the presence of technical debt in industrial GUI-Based Testware: A case study. In: Proceedings of the 9th international conference on software testing, verification and validation workshops, IEEE, pp 257?262. https://doi.org/10.1109/ICSTW.2016.47 Alegroth E, Steiner M, Martini A (2016) Exploring the presence of technical debt in industrial GUI-Based Testware: A case study. In: Proceedings of the 9th international conference on software testing, verification and validation workshops, IEEE, pp 257?262. https://​doi.​org/​10.​1109/​ICSTW.​2016.​47
Zurück zum Zitat Baker P, Dai ZR, Grabowski J, Haugen O, Schieferdecker I, Williams C (2008) Data-driven testing. In: Model-driven testing. Springer, pp 87–95 Baker P, Dai ZR, Grabowski J, Haugen O, Schieferdecker I, Williams C (2008) Data-driven testing. In: Model-driven testing. Springer, pp 87–95
Zurück zum Zitat Basit W, Lodhi F, Ahmed F, Bhatti MU (2013) A metric based evaluation of unit tests as specialized clients in Refactoring. Pak J Eng Appl Sci 13:37–53 Basit W, Lodhi F, Ahmed F, Bhatti MU (2013) A metric based evaluation of unit tests as specialized clients in Refactoring. Pak J Eng Appl Sci 13:37–53
Zurück zum Zitat Bavota G, Qusef A, Oliveto R, De Lucia A, Binkley D (2012) An empirical analysis of the distribution of unit test smells and their impact on software maintenance. In: Proceedings of the 28th IEEE international conference on software maintenance. IEEE, pp 56–65. https://doi.org/10.1109/ICSM.2012.6405253 Bavota G, Qusef A, Oliveto R, De Lucia A, Binkley D (2012) An empirical analysis of the distribution of unit test smells and their impact on software maintenance. In: Proceedings of the 28th IEEE international conference on software maintenance. IEEE, pp 56–65. https://​doi.​org/​10.​1109/​ICSM.​2012.​6405253
Zurück zum Zitat Biagiola M, Stocco A, Ricca F, Tonella P (2019) Diversity-based web test generation. In: Proceedings of the 27th ACM joint meeting on european software engineering conference and symposium on the foundations of software engineering, ACM Press, Tallinn, Estonia. https://doi.org/10.1145/3338906.3338970, vol 1, pp 142–153 Biagiola M, Stocco A, Ricca F, Tonella P (2019) Diversity-based web test generation. In: Proceedings of the 27th ACM joint meeting on european software engineering conference and symposium on the foundations of software engineering, ACM Press, Tallinn, Estonia. https://​doi.​org/​10.​1145/​3338906.​3338970, vol 1, pp 142–153
Zurück zum Zitat Breugelmans M, Rompaey BV (2008) TestQ : Exploring structural and maintenance characteristics of unit test suites. In: Proceedings of the 1st international workshop on advanced software development tools and techniques, i, pp 1–16 Breugelmans M, Rompaey BV (2008) TestQ : Exploring structural and maintenance characteristics of unit test suites. In: Proceedings of the 1st international workshop on advanced software development tools and techniques, i, pp 1–16
Zurück zum Zitat Brooks P, Robinson B, Memon AM (2009) An initial characterization of industrial graphical user interface systems. In: Proceedings of the 2nd IEEE international conference on software testing, verification, and validation, pp 11–20. https://doi.org/10.1109/ICST.2009.11 Brooks P, Robinson B, Memon AM (2009) An initial characterization of industrial graphical user interface systems. In: Proceedings of the 2nd IEEE international conference on software testing, verification, and validation, pp 11–20. https://​doi.​org/​10.​1109/​ICST.​2009.​11
Zurück zum Zitat Chen WK, Wang JC (2012) Bad smells and refactoring methods for GUI test scripts. In: Proceedings of the 13th international conference on software engineering, artificial intelligence, networking, and parallel/distributed computing pp 289–294. https://doi.org/10.1109/SNPD.2012.10 Chen WK, Wang JC (2012) Bad smells and refactoring methods for GUI test scripts. In: Proceedings of the 13th international conference on software engineering, artificial intelligence, networking, and parallel/distributed computing pp 289–294. https://​doi.​org/​10.​1109/​SNPD.​2012.​10
Zurück zum Zitat Delin M, Foegen K (2016) An analysis of information needs to detect test smells. full-scale software engineering/current trends in release engineering, pp 19–24 Delin M, Foegen K (2016) An analysis of information needs to detect test smells. full-scale software engineering/current trends in release engineering, pp 19–24
Zurück zum Zitat van Deursen A., Moonen, van Den BA, Kok G (2001) Refactoring test code. In: Proceedings of the 2nd international conference on extreme programming and flexible processes in software engineering, pp 92–95 van Deursen A., Moonen, van Den BA, Kok G (2001) Refactoring test code. In: Proceedings of the 2nd international conference on extreme programming and flexible processes in software engineering, pp 92–95
Zurück zum Zitat Femmer H, Fernȧndez DM, Juergens E, Klose M, Zimmer I (2014) Rapid requirements checks with requirements smells: two case studies. In: Proceedings of the 1st international workshop on rapid continuous software engineering, ACM Press, New York, USA, pp 10–19. https://doi.org/10.1145/2593812.2593817 Femmer H, Fernȧndez DM, Juergens E, Klose M, Zimmer I (2014) Rapid requirements checks with requirements smells: two case studies. In: Proceedings of the 1st international workshop on rapid continuous software engineering, ACM Press, New York, USA, pp 10–19. https://​doi.​org/​10.​1145/​2593812.​2593817
Zurück zum Zitat Fowler M, Beck K, Brant J, Opdyke W, Roberts D (1999) Refactoring: Improving The Design of Existing Code. Addison-Wesley Longman Publishing Co.,Inc., USA Fowler M, Beck K, Brant J, Opdyke W, Roberts D (1999) Refactoring: Improving The Design of Existing Code. Addison-Wesley Longman Publishing Co.,Inc., USA
Zurück zum Zitat Gao Z, Liang Y, Cohen MB, Memon AM, Wang Z (2015) Making System User Interactive Tests Repeatable: When and What Should We Control?. In: Proceedings of the 37th International Conference on Software Engineering, IEEE, vol 1, pp 55–65, https://doi.org/10.1109/ICSE.2015.28 Gao Z, Liang Y, Cohen MB, Memon AM, Wang Z (2015) Making System User Interactive Tests Repeatable: When and What Should We Control?. In: Proceedings of the 37th International Conference on Software Engineering, IEEE, vol 1, pp 55–65, https://​doi.​org/​10.​1109/​ICSE.​2015.​28
Zurück zum Zitat Hammoudi M, Rothermel G, Stocco A (2016a) WATERFALL: an incremental approach for repairing record-replay tests of web applications. In: Proceedings of the 24th ACM SIGSOFT international symposium on foundations of software engineering, ACM, New York, NY, USA, vol 13-18-Nove, pp 751–762. https://doi.org/10.1145/2950290.2950294 Hammoudi M, Rothermel G, Stocco A (2016a) WATERFALL: an incremental approach for repairing record-replay tests of web applications. In: Proceedings of the 24th ACM SIGSOFT international symposium on foundations of software engineering, ACM, New York, NY, USA, vol 13-18-Nove, pp 751–762. https://​doi.​org/​10.​1145/​2950290.​2950294
Zurück zum Zitat Hammoudi M, Rothermel G, Tonella P (2016b) Why do Record/Replay Tests of Web Applications Break?. In: Proceedings of the international conference on software testing, verification and validation, IEEE, pp 180–190 Hammoudi M, Rothermel G, Tonella P (2016b) Why do Record/Replay Tests of Web Applications Break?. In: Proceedings of the international conference on software testing, verification and validation, IEEE, pp 180–190
Zurück zum Zitat Hauptmann B, Eder S, Junker M, Juergens E, Woinke V (2015) Generating Refactoring Proposals to remove clones from automated system tests. In: Proceedings of the 23rd international conference on program comprehension, IEEE, vol 2015-August, pp 115–124. https://doi.org/10.1109/ICPC.2015.20 Hauptmann B, Eder S, Junker M, Juergens E, Woinke V (2015) Generating Refactoring Proposals to remove clones from automated system tests. In: Proceedings of the 23rd international conference on program comprehension, IEEE, vol 2015-August, pp 115–124. https://​doi.​org/​10.​1109/​ICPC.​2015.​20
Zurück zum Zitat Humble J, Farley DG (2010) Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Addison-Wesley Upper Saddle River, NJ Humble J, Farley DG (2010) Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Addison-Wesley Upper Saddle River, NJ
Zurück zum Zitat Hurdugaci V, Zaidman A (2012) Aiding software developers to maintain developer tests. In: Proceedings of 16th european conference on software maintenance and Reengineering, IEEE, pp 11–20 Hurdugaci V, Zaidman A (2012) Aiding software developers to maintain developer tests. In: Proceedings of 16th european conference on software maintenance and Reengineering, IEEE, pp 11–20
Zurück zum Zitat Issa A, Sillito J, Garousi V (2012) Visual testing of graphical user interfaces: an exploratory study towards systematic definitions and approaches. In: Proceedings of the international symposium on web systems evolution, IEEE, pp 11–15. https://doi.org/10.1109/WSE.2012.6320526 Issa A, Sillito J, Garousi V (2012) Visual testing of graphical user interfaces: an exploratory study towards systematic definitions and approaches. In: Proceedings of the international symposium on web systems evolution, IEEE, pp 11–15. https://​doi.​org/​10.​1109/​WSE.​2012.​6320526
Zurück zum Zitat Katalon (2018) The most striking problems in test automation : A survey. Tech Rep May, Katalon Katalon (2018) The most striking problems in test automation : A survey. Tech Rep May, Katalon
Zurück zum Zitat Khomh F, Vaucher S, Guéhéneuc YG, Sahraoui H (2009) A bayesian approach for the detection of code and design smells. In: Proceedings of the 9th international conference on quality software. IEEE Comput Soc, USA, pp 305–314. https://doi.org/10.1109/QSIC.2009.47 Khomh F, Vaucher S, Guéhéneuc YG, Sahraoui H (2009) A bayesian approach for the detection of code and design smells. In: Proceedings of the 9th international conference on quality software. IEEE Comput Soc, USA, pp 305–314. https://​doi.​org/​10.​1109/​QSIC.​2009.​47
Zurück zum Zitat Kirinuki H, Tanno H, Natsukawa K (2019) COLOR: correct locator recommender for broken test scripts using various clues in web application. In: Proceedings of the 26th international conference on software analysis, evolution and Reengineering, IEEE, vol 36, pp 310–320 Kirinuki H, Tanno H, Natsukawa K (2019) COLOR: correct locator recommender for broken test scripts using various clues in web application. In: Proceedings of the 26th international conference on software analysis, evolution and Reengineering, IEEE, vol 36, pp 310–320
Zurück zum Zitat Kitchenham BA, Charters S (2007) Guidelines for performing systematic literature reviews in software engineering. Tech. Rep. EBSE 2007-001, Keele University and Durham University Joint Report Kitchenham BA, Charters S (2007) Guidelines for performing systematic literature reviews in software engineering. Tech. Rep. EBSE 2007-001, Keele University and Durham University Joint Report
Zurück zum Zitat Labuschagne A, Inozemtseva L, Holmes R (2017) Measuring the cost of regression testing in practice: a study of Java projects using continuous integration. In: proceedings of the 11th Joint Meeting on Foundations of Software Engineering, pp 821–830. https://doi.org/10.1145/3106237.3106288 Labuschagne A, Inozemtseva L, Holmes R (2017) Measuring the cost of regression testing in practice: a study of Java projects using continuous integration. In: proceedings of the 11th Joint Meeting on Foundations of Software Engineering, pp 821–830. https://​doi.​org/​10.​1145/​3106237.​3106288
Zurück zum Zitat Leotta M, Stocco A, Ricca F, Tonella P (2014) Reducing web test cases aging by means of robust XPath locators. In: Proceedings of the IEEE international symposium on software reliability engineering workshops, IEEE, pp 449–454 Leotta M, Stocco A, Ricca F, Tonella P (2014) Reducing web test cases aging by means of robust XPath locators. In: Proceedings of the IEEE international symposium on software reliability engineering workshops, IEEE, pp 449–454
Zurück zum Zitat Leotta M, Stocco A, Ricca F, Tonella P (2016) Robula+: an algorithm for generating robust XPath locators for web testing. J softw: Evol Process 28(3):177–204 Leotta M, Stocco A, Ricca F, Tonella P (2016) Robula+: an algorithm for generating robust XPath locators for web testing. J softw: Evol Process 28(3):177–204
Zurück zum Zitat Mabl (2021) Benchmark report : the state of testing in DeVops Mabl (2021) Benchmark report : the state of testing in DeVops
Zurück zum Zitat Meszaros G (2007) xUnit Test Patterns: Refactoring Test Code, 1st edn. Addison-Wesley Meszaros G (2007) xUnit Test Patterns: Refactoring Test Code, 1st edn. Addison-Wesley
Zurück zum Zitat Peruma A, Almalki K, Newman C D, Mkaouer M W, Ouni A, Palomba F (2020) tsDetect: an open-source test smells detection tool. In: Proceedings of the 28th joint meeting on European software engineering conference and symposium on the foundations of software engineering, ACM, New York, NY, USA, pp 1650-1654. https://doi.org/10.1145/3368089.3417921 Peruma A, Almalki K, Newman C D, Mkaouer M W, Ouni A, Palomba F (2020) tsDetect: an open-source test smells detection tool. In: Proceedings of the 28th joint meeting on European software engineering conference and symposium on the foundations of software engineering, ACM, New York, NY, USA, pp 1650-1654. https://​doi.​org/​10.​1145/​3368089.​3417921
Zurück zum Zitat Rwemalika R, Kintis M, Papadakis M, Le Traon Y, Lorrach P (2019a) On the evolution of keyword-driven test suites. In: Proceedings of the 12th international conference on software testing, verification and validation, New York, NY, USA, pp 335-345 Rwemalika R, Kintis M, Papadakis M, Le Traon Y, Lorrach P (2019a) On the evolution of keyword-driven test suites. In: Proceedings of the 12th international conference on software testing, verification and validation, New York, NY, USA, pp 335-345
Zurück zum Zitat Rwemalika R, Kintis M, Papadakis M, Le Traon Y, Lorrach P (2019b) Ukwikora: continuous inspection for keyword-driven testing. In: Proceedings of the 28th international symposium on software testing and analysis, association for computing machinery, New York, NY, USA, pp 402–405. https://doi.org/10.1145/3293882.3339003 Rwemalika R, Kintis M, Papadakis M, Le Traon Y, Lorrach P (2019b) Ukwikora: continuous inspection for keyword-driven testing. In: Proceedings of the 28th international symposium on software testing and analysis, association for computing machinery, New York, NY, USA, pp 402–405. https://​doi.​org/​10.​1145/​3293882.​3339003
Zurück zum Zitat Satopaa V, Albrecht J, Irwin D, Raghavan B (2011) Finding a kneedle in a haystack: detecting knee points in system behavior. In: Proceedings of the 31st IEEE international conference on distributed computing systems workshops, IEEE, pp 166–171. https://doi.org/10.1109/ICDCSW.2011.20 Satopaa V, Albrecht J, Irwin D, Raghavan B (2011) Finding a kneedle in a haystack: detecting knee points in system behavior. In: Proceedings of the 31st IEEE international conference on distributed computing systems workshops, IEEE, pp 166–171. https://​doi.​org/​10.​1109/​ICDCSW.​2011.​20
Zurück zum Zitat Spadini D, Schvarcbacher M, Oprescu AM, Bruntink M, Bacchelli A (2020) Investigating severity thresholds for test smells. In: Proceedings of the 17th international conference on mining software repositories, ACM, New York, NY, USA, pp 311–321. https://doi.org/10.1145/3379597.3387453 Spadini D, Schvarcbacher M, Oprescu AM, Bruntink M, Bacchelli A (2020) Investigating severity thresholds for test smells. In: Proceedings of the 17th international conference on mining software repositories, ACM, New York, NY, USA, pp 311–321. https://​doi.​org/​10.​1145/​3379597.​3387453
Zurück zum Zitat Tsantalis N, Guana V, Stroulia E, Hindle A (2013) A multidimensional empirical study on Refactoring cctivity. In: Proceedings of the conference of the center for advanced studies on collaborative research, IBM Corp, Ontario, Canada, pp 132–146 Tsantalis N, Guana V, Stroulia E, Hindle A (2013) A multidimensional empirical study on Refactoring cctivity. In: Proceedings of the conference of the center for advanced studies on collaborative research, IBM Corp, Ontario, Canada, pp 132–146
Zurück zum Zitat Tufano M, Palomba F, Bavota G, Di Penta M, Oliveto R, De Lucia A, Poshyvanyk D (2016) An empirical investigation into the nature of test smells. In: Proceedings of the 31st international conference on automated software engineering, ACM Press, Singapore, pp 4–15. https://doi.org/10.1145/2970276.2970340 Tufano M, Palomba F, Bavota G, Di Penta M, Oliveto R, De Lucia A, Poshyvanyk D (2016) An empirical investigation into the nature of test smells. In: Proceedings of the 31st international conference on automated software engineering, ACM Press, Singapore, pp 4–15. https://​doi.​org/​10.​1145/​2970276.​2970340
Zurück zum Zitat Virgi̇nio T, Martins LA, Soares LR, Santana R, Costa H, Machado I (2020) An empirical study of automatically-generated tests from the perspective of test smells. In: Proceedings of the 34th Brazilian symposium on software engineering, ACM, New York, NY, USA, pp 92–96.https://doi.org/10.1145/3422392.3422412 Virgi̇nio T, Martins LA, Soares LR, Santana R, Costa H, Machado I (2020) An empirical study of automatically-generated tests from the perspective of test smells. In: Proceedings of the 34th Brazilian symposium on software engineering, ACM, New York, NY, USA, pp 92–96.https://​doi.​org/​10.​1145/​3422392.​3422412
Zurück zum Zitat Yu S, Fang C, Feng Y, Zhao W, Chen Z (2019) LIRAT: layout and image recognition driving automated mobile testing of cross-platform. In: Proceedings of the 34th international conference on automated software engineering, IEEE, pp 1066–1069 https://doi.org/10.1109/ASE.2019.00103 Yu S, Fang C, Feng Y, Zhao W, Chen Z (2019) LIRAT: layout and image recognition driving automated mobile testing of cross-platform. In: Proceedings of the 34th international conference on automated software engineering, IEEE, pp 1066–1069 https://​doi.​org/​10.​1109/​ASE.​2019.​00103
Zurück zum Zitat Yuan X, Cohen M, Memon AM (2007) Covering array sampling of input event sequences for automated gui testing. In: Proceedings of the 22nd international conference on automated software engineering, ACM Press, New York, USA, pp 405 Yuan X, Cohen M, Memon AM (2007) Covering array sampling of input event sequences for automated gui testing. In: Proceedings of the 22nd international conference on automated software engineering, ACM Press, New York, USA, pp 405
Zurück zum Zitat Zhang S, Jalali D, Wuttke J, Muşlu K, Lam W, Ernst MD, Notkin D (2014) Empirically revisiting the test independence assumption. In: Proceedings of the international symposium on software testing and analysis, ACM Press, New York,USA, pp 385–396. https://doi.org/10.1145/2610384.2610404 Zhang S, Jalali D, Wuttke J, Muşlu K, Lam W, Ernst MD, Notkin D (2014) Empirically revisiting the test independence assumption. In: Proceedings of the international symposium on software testing and analysis, ACM Press, New York,USA, pp 385–396. https://​doi.​org/​10.​1145/​2610384.​2610404
Metadaten
Titel
Smells in system user interactive tests
verfasst von
Renaud Rwemalika
Sarra Habchi
Mike Papadakis
Yves Le Traon
Marie-Claude Brasseur
Publikationsdatum
01.01.2023
Verlag
Springer US
Erschienen in
Empirical Software Engineering / Ausgabe 1/2023
Print ISSN: 1382-3256
Elektronische ISSN: 1573-7616
DOI
https://doi.org/10.1007/s10664-022-10251-1

Weitere Artikel der Ausgabe 1/2023

Empirical Software Engineering 1/2023 Zur Ausgabe

Premium Partner