Regression Test Reduction for Object-Oriented Software: A Control Call Graph Based Technique and Associated Tool

This paper presents a selective regression testing technique and an associated tool for object-oriented software. The technique is based on the concept of Control Call Graphs, which are a reduced form of traditional Control Flow Graphs. It uses static analysis of the source code of the program. The...

Celý popis

Uložené v:
Podrobná bibliografia
Vydané v:ISRN Software Engineering Ročník 2013
Hlavní autori: Frechette, Nicolas, Badri, Linda, Badri, Mourad
Médium: Journal Article
Jazyk:English
Vydavateľské údaje: Hindawi Publishing Corporation 11.04.2013
ISSN:2090-7680
On-line prístup:Získať plný text
Tagy: Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
Abstract This paper presents a selective regression testing technique and an associated tool for object-oriented software. The technique is based on the concept of Control Call Graphs, which are a reduced form of traditional Control Flow Graphs. It uses static analysis of the source code of the program. The developed tool (1) identifies the Control Call Paths potentially impacted by changes, (2) selects, from an existing test suite, the appropriate test cases, and (3) generates new JUnit test cases for control call paths that are not covered by existing tests (new ones, or those whose structure has been modified after changes). In this way, the approach supports an incremental update of the test suite. The selected JUnit test cases, including the new ones, are automatically executed. Three concrete case studies are reported to provide evidence of the feasibility of the approach and its benefits in terms of reduction of regression testing effort.
AbstractList This paper presents a selective regression testing technique and an associated tool for object-oriented software. The technique is based on the concept of Control Call Graphs, which are a reduced form of traditional Control Flow Graphs. It uses static analysis of the source code of the program. The developed tool (1) identifies the Control Call Paths potentially impacted by changes, (2) selects, from an existing test suite, the appropriate test cases, and (3) generates new JUnit test cases for control call paths that are not covered by existing tests (new ones, or those whose structure has been modified after changes). In this way, the approach supports an incremental update of the test suite. The selected JUnit test cases, including the new ones, are automatically executed. Three concrete case studies are reported to provide evidence of the feasibility of the approach and its benefits in terms of reduction of regression testing effort.
Author Badri, Mourad
Badri, Linda
Frechette, Nicolas
Author_xml – sequence: 1
  givenname: Nicolas
  surname: Frechette
  fullname: Frechette, Nicolas
  organization: Software Engineering Research Laboratory Department of Mathematics and Computer Science University of Quebec Trois-Rivières, QC Canada G9A 5H7 uquebec.ca
– sequence: 2
  givenname: Linda
  orcidid: 0000-0002-6769-0320
  surname: Badri
  fullname: Badri, Linda
  organization: Software Engineering Research Laboratory Department of Mathematics and Computer Science University of Quebec Trois-Rivières, QC Canada G9A 5H7 uquebec.ca
– sequence: 3
  givenname: Mourad
  orcidid: 0000-0001-9034-9713
  surname: Badri
  fullname: Badri, Mourad
  organization: Software Engineering Research Laboratory Department of Mathematics and Computer Science University of Quebec Trois-Rivières, QC Canada G9A 5H7 uquebec.ca
BookMark eNotkE1LAzEYhIMoWGtP_oGchdU3mzSb9VYXrUKhUNfzkk-bsiY12VL893apcxkGZubw3KDLEINF6I7AAyHz-WMJhD6yEmjNLtCkhBqKigu4RrOcd3BSzSgHPkH7jf1KNmcfA25tHvDGmoMexuhiwmu1s3oo1snbMFiDP6IbjjLZJ7zATQxDij1uZN_jZZL7LX6W-VRqrd4G_3OwWAaDFzlH7eW4bmPsb9GVk322s3-fos_Xl7Z5K1br5XuzWBWagGCF1ZyDJcRBqZyopFCMCFVBZZhWRlNFuDHEqXl5CjV1DJRi4CQXgkgqFZ2i-_Pv1gcjj77bJ_8t029HoBsRdSOi7oyI_gE22V0B
ContentType Journal Article
Copyright Copyright © 2013 Nicolas Frechette et al.
Copyright_xml – notice: Copyright © 2013 Nicolas Frechette et al.
DBID RHU
RHW
RHX
DOI 10.1155/2013/420394
DatabaseName Hindawi Publishing Complete
Hindawi Publishing Subscription Journals
Hindawi Publishing Open Access
DatabaseTitleList
Database_xml – sequence: 1
  dbid: RHX
  name: Hindawi Publishing Open Access
  url: http://www.hindawi.com/journals/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 2090-7680
Editor Framling, K.
Ipate, F.
Shukla, S. K.
Editor_xml – sequence: 1
  givenname: K.
  surname: Framling
  fullname: Framling, K.
– sequence: 2
  givenname: F.
  surname: Ipate
  fullname: Ipate, F.
– sequence: 3
  givenname: S. K.
  surname: Shukla
  fullname: Shukla, S. K.
ExternalDocumentID 10_1155_2013_420394
GroupedDBID 4.4
5VS
AAJEY
ACGFO
ALMA_UNASSIGNED_HOLDINGS
EBS
EJD
KQ8
M~E
OK1
RHU
RHW
RHX
ID FETCH-LOGICAL-c1084-ec660e11f02bf87a8b418b707d4cbdc3b16dd1fb52dc393f40bb40fa6881a3ab3
IEDL.DBID RHX
IngestDate Sun Jun 02 18:47:03 EDT 2024
IsDoiOpenAccess true
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
Language English
License This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-c1084-ec660e11f02bf87a8b418b707d4cbdc3b16dd1fb52dc393f40bb40fa6881a3ab3
ORCID 0000-0002-6769-0320
0000-0001-9034-9713
OpenAccessLink https://dx.doi.org/10.1155/2013/420394
ParticipantIDs hindawi_primary_10_1155_2013_420394
PublicationCentury 2000
PublicationDate 20130411
PublicationDateYYYYMMDD 2013-04-11
PublicationDate_xml – month: 4
  year: 2013
  text: 20130411
  day: 11
PublicationDecade 2010
PublicationTitle ISRN Software Engineering
PublicationYear 2013
Publisher Hindawi Publishing Corporation
Publisher_xml – name: Hindawi Publishing Corporation
References Pilskalns O. Uyan G. Andrews A. Regression testing UML designs Proceedings of the 22nd IEEE International Conference on Software Maintenance (ICSM '06) September 2006 254 263 2-s2.0-34547283550 10.1109/ICSM.2006.53
Skoglund M. Runeson P. A case study of the class firewall regression test selection technique on a large scale distributed software system Proceedings of the International Symposium on Empirical Software Engineering (ISESE '05) November 2005 74 83 2-s2.0-33749063174 10.1109/ISESE.2005.1541816
Chen Y. F. Rosenblum D. S. Vo K. P. TestTube: a system for selective regression testing Proceedings of the 16th International Conference on Software Engineering May 1994 Sorrento, Italy 211 220 2-s2.0-0028166439
Harrold M. J. Jones J. A. Li T. Liang D. Orso A. Pennings M. Sinha S. Spoon S. A. Gujarathi A. Regression test selection for Java software Proceedings of the Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA '01) October 2001 312 326 2-s2.0-0035551930
White L. Jaber K. Robinson B. Utilization of extended firewall for object-oriented regression testing Proceedings of the 21st IEEE International Conference on Software Maintenance (ICSM '05) September 2005 695 698 2-s2.0-33646933255
Koju T. Takada S. Doi N. Regression test selection based on intermediate code for virtual machines Proceedings of the International Conference on Software Maintenance September 2003 420 429 2-s2.0-0142230505
Wong W. E. Horgan J. R. London S. Agrawal H. Study of effective regression testing in practice Proceedings of the 8th International Symposium on Software Reliability Engineering (ISSRE '97) November 1997 264 274 2-s2.0-0031335528
Wu Y. Chen M. H. Kao H. M. Regression testing on object-oriented programs Proceedings of the 10th International Symposium on Software Reliability Engineering (ISSRE '99) November 1999 270 279 2-s2.0-0033334512
Ball T. On the limit of control flow analysis for regression test selection Proceedings of ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 98) 1998 Clearwater Beach, Fla, USA 134 142 10.1145/271771.271802
Leung H. K. White L. A cost model to compare regression test strategies Proceedings of the International Conference on Software Maintenance 1991 201 208
Korel B. Al-Yami A. M. Automated regression test generation Proceedings of ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 98) 1998 Clearwater Beach, Fla, USA 143 152 10.1145/271771.271803
Badri L. Badri M. St-Yves D. Supporting predictive change impact analysis: a control call graph based technique Proceedings of the 12th Asia-Pacific Software Engineering Conference (APSEC '05) December 2005 167 175 2-s2.0-33847284978 10.1109/APSEC.2005.100
(9) 2001; 10
White L. J. Leung H. K. N. A firewall concept for both control-flow and data-flow in regression integration testing Proceedings of the Conference of Software Maintenance 1992 262 271
(18) 1997
Sommerville I. Software Engineering 2010 9th Addison Wesley
Rothermel G. Harrold M. J. A comparison of regression test selection techniques April 1993 114 Clemson, SC, USA Clemson University
Chen Y. Probert R. L. Ural H. Model-based regression test suite generation using dependence analysis Proceedings of the 3rd International Workshop Advances in Model Based Testing (AMOST '07) September 2007 54 62 2-s2.0-38849154386 10.1145/1291535.1291541
(4) 1997; 6
(42) 1998; 41
Fahad M. Nadeem A. Shi Z. Mercier-Laurent E. Leake D. A survey of UML based regression testing IFIP International Federation for Information Processing 2008 288 Boston, Mass, USA Springer 200 210
(30) 2011; 23
Law J. Rothermel G. Whole program path-based dynamic impact analysis Proceedings of the 25th International Conference on Software Engineering May 2003 308 318 2-s2.0-0038601625
Ammann P. Black P. E. Ding W. Model checkers in software testing NIST-IR 6777 2002 National Institute of Standards and Technology
(23) 1999; 24
Orso A. Apiwattanapong T. Harrold M. J. Leveraging field data for impact analysis and regression testing Proceedings of the 9th European Software Engineering Conference Held Jointly with 11th ACM SIGSOFT International Symposium on Foundations of Software Engineering (ESEC/FSE '11) September 2003 Helsinki, Finland 128 137 2-s2.0-77954472760 10.1145/940071.940089
(3) 1995; 8
White L. Almezen H. Sastry S. Firewall regression testing of GUI sequences and their interactions Proceedings of the International Conference on Software Maintenance September 2003 398 409 2-s2.0-77956619630 10.1109/ICSM.2003.1235450
Wu D. Hennell M. A. Hedley D. Riddell I. J. A practical method for software quality control via program mutation Proceedings of the 2nd Workshop on Software Testing, Verification, and Analysis 1988 159 170
(6) 1996; 22
Leung H. K. N. White L. A study of integration testing and software regression at the integration level Proceedings of the Conference on Software Maintenance November 1990 San Diego, Calif, USA 290 301 10.1109/ICSM.1990.131377 2-s2.0-0025510772
Chen Y. Probert R. L. Sims D. P. Specification-based regression test selection with risk analysis IBM Center Advanced Studies Conference 2002
Larman G. UML et les Design Pattern 2002 Campus Press
(17) 1997; 9
(28) 2000; 10
Briand L. C. Labiche Y. Soccar G. Automating impact analysis and regression test selection based on UML designs Proceedings of IEEE International Conference on Software Maintenance October 2002 252 261 2-s2.0-0036442261
Bennett K. Rajlich V. Software maintenance and evolution: a roadmap Proceedings of the Conference on the Future of Software Engineering 2000 New York, NY, USA ACM 73 87 10.1145/336512.336534
Vincent P. L. Badri L. Badri M. Kim T.-H. Ramos C. Kim H. Kiumi A. Mohammed S. Ślęzak D. Regression testing of object-oriented software: a technique based on use cases and associated tool Proceedings of the International Conference on Advanced Software Engineering & Its Applications (ASEA '12) December 2012 Jeju, Korea Springer Lecture Notes in Computer Science
Rothermel G. Harrold M. J. Framework for evaluating regression test selection techniques Proceedings of the 16th International Conference on Software Engineering May 1994 201 210 2-s2.0-0028166442
Abdullah K. The firewall concept for regression testing and impact analysis of object oriented systems [Ph.D. thesis] 1998 Case Western Reserve University
(13) 2010; 52
Engström E. Skoglund M. Runeson P. Empirical evaluations of regression test selection techniques: a systematic review Proceedings of the 2nd International Symposium on Empirical Software Engineering and Measurement (ESEM '08) October 2008 22 31 2-s2.0-62949161375 10.1145/1414004.1414011
(24) 1999; 11
Laski J. Szermer W. Identification of program modifications and its applications in software maintenance Proceedings of the Conference on Software Maintenance 1992
References_xml – volume: 10
  start-page: 77
  issue: 2
  year: 2000
  end-page: 109
  ident: 28
  article-title: Regression test selection for C++ software
– reference: Bennett K. Rajlich V. Software maintenance and evolution: a roadmap Proceedings of the Conference on the Future of Software Engineering 2000 New York, NY, USA ACM 73 87 10.1145/336512.336534
– reference: Skoglund M. Runeson P. A case study of the class firewall regression test selection technique on a large scale distributed software system Proceedings of the International Symposium on Empirical Software Engineering (ISESE '05) November 2005 74 83 2-s2.0-33749063174 10.1109/ISESE.2005.1541816
– reference: Ammann P. Black P. E. Ding W. Model checkers in software testing NIST-IR 6777 2002 National Institute of Standards and Technology
– reference: Engström E. Skoglund M. Runeson P. Empirical evaluations of regression test selection techniques: a systematic review Proceedings of the 2nd International Symposium on Empirical Software Engineering and Measurement (ESEM '08) October 2008 22 31 2-s2.0-62949161375 10.1145/1414004.1414011
– reference: Leung H. K. N. White L. A study of integration testing and software regression at the integration level Proceedings of the Conference on Software Maintenance November 1990 San Diego, Calif, USA 290 301 10.1109/ICSM.1990.131377 2-s2.0-0025510772
– volume: 11
  start-page: 93
  issue: 2
  year: 1999
  end-page: 116
  ident: 24
  article-title: Automated regression testing using DBT and sleuth
– volume: 10
  start-page: 184
  issue: 2
  year: 2001
  end-page: 208
  ident: 9
  article-title: An empirical study of regression test selection techniques
– reference: Law J. Rothermel G. Whole program path-based dynamic impact analysis Proceedings of the 25th International Conference on Software Engineering May 2003 308 318 2-s2.0-0038601625
– reference: White L. Jaber K. Robinson B. Utilization of extended firewall for object-oriented regression testing Proceedings of the 21st IEEE International Conference on Software Maintenance (ICSM '05) September 2005 695 698 2-s2.0-33646933255
– volume: 6
  start-page: 173
  issue: 2
  year: 1997
  end-page: 210
  ident: 4
  article-title: A safe, efficient regression test selection technique
– reference: Abdullah K. The firewall concept for regression testing and impact analysis of object oriented systems [Ph.D. thesis] 1998 Case Western Reserve University
– reference: Chen Y. F. Rosenblum D. S. Vo K. P. TestTube: a system for selective regression testing Proceedings of the 16th International Conference on Software Engineering May 1994 Sorrento, Italy 211 220 2-s2.0-0028166439
– reference: Harrold M. J. Jones J. A. Li T. Liang D. Orso A. Pennings M. Sinha S. Spoon S. A. Gujarathi A. Regression test selection for Java software Proceedings of the Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA '01) October 2001 312 326 2-s2.0-0035551930
– reference: Badri L. Badri M. St-Yves D. Supporting predictive change impact analysis: a control call graph based technique Proceedings of the 12th Asia-Pacific Software Engineering Conference (APSEC '05) December 2005 167 175 2-s2.0-33847284978 10.1109/APSEC.2005.100
– reference: Wu Y. Chen M. H. Kao H. M. Regression testing on object-oriented programs Proceedings of the 10th International Symposium on Software Reliability Engineering (ISSRE '99) November 1999 270 279 2-s2.0-0033334512
– reference: Fahad M. Nadeem A. Shi Z. Mercier-Laurent E. Leake D. A survey of UML based regression testing IFIP International Federation for Information Processing 2008 288 Boston, Mass, USA Springer 200 210
– volume: 22
  start-page: 529
  issue: 8
  year: 1996
  end-page: 551
  ident: 6
  article-title: Analyzing regression test selection techniques
– volume: 52
  start-page: 14
  issue: 1
  year: 2010
  end-page: 30
  ident: 13
  article-title: A systematic review on regression test selection techniques
– reference: Chen Y. Probert R. L. Ural H. Model-based regression test suite generation using dependence analysis Proceedings of the 3rd International Workshop Advances in Model Based Testing (AMOST '07) September 2007 54 62 2-s2.0-38849154386 10.1145/1291535.1291541
– reference: Leung H. K. White L. A cost model to compare regression test strategies Proceedings of the International Conference on Software Maintenance 1991 201 208
– reference: Rothermel G. Harrold M. J. Framework for evaluating regression test selection techniques Proceedings of the 16th International Conference on Software Engineering May 1994 201 210 2-s2.0-0028166442
– reference: Rothermel G. Harrold M. J. A comparison of regression test selection techniques April 1993 114 Clemson, SC, USA Clemson University
– reference: Wong W. E. Horgan J. R. London S. Agrawal H. Study of effective regression testing in practice Proceedings of the 8th International Symposium on Software Reliability Engineering (ISSRE '97) November 1997 264 274 2-s2.0-0031335528
– volume: 41
  start-page: 81
  issue: 5
  year: 1998
  end-page: 86
  ident: 42
  article-title: Regression testing in an industrial environment
– reference: Briand L. C. Labiche Y. Soccar G. Automating impact analysis and regression test selection based on UML designs Proceedings of IEEE International Conference on Software Maintenance October 2002 252 261 2-s2.0-0036442261
– reference: Laski J. Szermer W. Identification of program modifications and its applications in software maintenance Proceedings of the Conference on Software Maintenance 1992
– reference: White L. Almezen H. Sastry S. Firewall regression testing of GUI sequences and their interactions Proceedings of the International Conference on Software Maintenance September 2003 398 409 2-s2.0-77956619630 10.1109/ICSM.2003.1235450
– reference: White L. J. Leung H. K. N. A firewall concept for both control-flow and data-flow in regression integration testing Proceedings of the Conference of Software Maintenance 1992 262 271
– volume: 8
  start-page: 51
  issue: 2
  year: 1995
  end-page: 65
  ident: 3
  article-title: Class firewall, test order, and regression testing of object-oriented programs
– reference: Chen Y. Probert R. L. Sims D. P. Specification-based regression test selection with risk analysis IBM Center Advanced Studies Conference 2002
– year: 1997
  ident: 18
  article-title: A firewall approach for the regression testing of object oriented software
– reference: Ball T. On the limit of control flow analysis for regression test selection Proceedings of ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 98) 1998 Clearwater Beach, Fla, USA 134 142 10.1145/271771.271802
– reference: Pilskalns O. Uyan G. Andrews A. Regression testing UML designs Proceedings of the 22nd IEEE International Conference on Software Maintenance (ICSM '06) September 2006 254 263 2-s2.0-34547283550 10.1109/ICSM.2006.53
– volume: 24
  start-page: 69
  issue: 1
  year: 1999
  end-page: 73
  ident: 23
  article-title: An overview of regression testing
– reference: Koju T. Takada S. Doi N. Regression test selection based on intermediate code for virtual machines Proceedings of the International Conference on Software Maintenance September 2003 420 429 2-s2.0-0142230505
– volume: 9
  start-page: 217
  issue: 4
  year: 1997
  end-page: 233
  ident: 17
  article-title: A technique for the selective revalidation of OO software
– reference: Wu D. Hennell M. A. Hedley D. Riddell I. J. A practical method for software quality control via program mutation Proceedings of the 2nd Workshop on Software Testing, Verification, and Analysis 1988 159 170
– reference: Larman G. UML et les Design Pattern 2002 Campus Press
– reference: Korel B. Al-Yami A. M. Automated regression test generation Proceedings of ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 98) 1998 Clearwater Beach, Fla, USA 143 152 10.1145/271771.271803
– reference: Sommerville I. Software Engineering 2010 9th Addison Wesley
– reference: Orso A. Apiwattanapong T. Harrold M. J. Leveraging field data for impact analysis and regression testing Proceedings of the 9th European Software Engineering Conference Held Jointly with 11th ACM SIGSOFT International Symposium on Foundations of Software Engineering (ESEC/FSE '11) September 2003 Helsinki, Finland 128 137 2-s2.0-77954472760 10.1145/940071.940089
– volume: 23
  start-page: 51
  issue: 1
  year: 2011
  end-page: 68
  ident: 30
  article-title: UML-based regression testing for OO software
– reference: Vincent P. L. Badri L. Badri M. Kim T.-H. Ramos C. Kim H. Kiumi A. Mohammed S. Ślęzak D. Regression testing of object-oriented software: a technique based on use cases and associated tool Proceedings of the International Conference on Advanced Software Engineering & Its Applications (ASEA '12) December 2012 Jeju, Korea Springer Lecture Notes in Computer Science
SSID ssj0000943606
Score 1.8302928
Snippet This paper presents a selective regression testing technique and an associated tool for object-oriented software. The technique is based on the concept of...
SourceID hindawi
SourceType Publisher
Title Regression Test Reduction for Object-Oriented Software: A Control Call Graph Based Technique and Associated Tool
URI https://dx.doi.org/10.1155/2013/420394
Volume 2013
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV09T8MwELVoxcDCN6J86SRYLezESS5spaJ0QC0qReoW2bENlaq0agv9-9hJihAsjFYcD3fO3Tvn-R0hN9zjcoWaapYqKtwOpinKmFpbZqAgt6rUmX1K-n0cj9PnmiC7_PsL32U7V57z8FYELExFgzQw8sStYW_8fZLiuXEOhteX73694WDtuy9u15MfaaO7T3ZrvAftykEHZMsUh2Rv00sB6k_riMyH5q2ipBYwcpEahl5T1VsNHKyEgfLnJXTgVYkdRoQXFz3XcmHuoA2dim0OHTmdwqMXoIZ7l5s0jDb6rCALDRtH-Aez2fSYvHYfRp0erbsh0JwzFNTkccwM55YFymIiUQmOKmGJFrnSeah4rDW3KgrcIA2tYEoJZmWMyGUoVXhCmsWsMKcE0BiHDGIr0S2sJccEHY5IdZzaXEdoWuS6Nlo2rzQvsrJWiKLMmzarTHv2r1nnZCcoO0gIyvkFaa4WH-aSbOefq8lycVV68gtWB5pc
linkProvider Hindawi Publishing
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Regression+Test+Reduction+for+Object-Oriented+Software%3A+A+Control+Call+Graph+Based+Technique+and+Associated+Tool&rft.jtitle=ISRN+Software+Engineering&rft.au=Frechette%2C+Nicolas&rft.au=Badri%2C+Linda&rft.au=Badri%2C+Mourad&rft.date=2013-04-11&rft.pub=Hindawi+Publishing+Corporation&rft.eissn=2090-7680&rft.volume=2013&rft_id=info:doi/10.1155%2F2013%2F420394&rft.externalDocID=10_1155_2013_420394