|
ABSTRACT
Despite the upsurge of interest in the Aspect-Oriented Programming (AOP) paradigm, there remain few results on test data generation techniques for AOP. Furthermore, there is no work on search-based optimization for test data generation, an approach that has been shown to be successful in other programming paradigms. In this paper, we introduce a search-based optimization approach to automated test data generation for structural coverage of AOP systems. We present the results of an empirical study that demonstrates the effectiveness of the approach. We also introduce a domain reduction approach for AOP testing and show that this approach not only reduces test effort, but also increases test effectiveness. This finding is significant, because similar studies for non-AOP programming paradigms show no such improvement in effectiveness, merely a reduction in effort. We also present the results of an empirical study of the reduction in test effort achieved by focusing specifically on branches inside aspects.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
The AOSD-Europe project. http://aosd-europe.net/.
|
| |
2
|
The AspectOPTIMA aspect-oriented framework. http://www.cs.mcgill.ca/~joerg/SEL/AspectOPTIMA.html.
|
| |
3
|
R. T. Alexander, J. M. Bieman, and A. A. Andrews. Towards the systematic testing of aspect-oriented programs. Technical Report CS-4-105, Department of Computer Science, Colorado State University, Fort Collins, Colorado, 2004.
|
| |
4
|
|
| |
5
|
|
| |
6
|
|
| |
7
|
|
| |
8
|
|
| |
9
|
|
| |
10
|
British Standards Institute. BS 7925-2 software component testing, 1998.
|
| |
11
|
|
 |
12
|
Bruno Dufour , Christopher Goard , Laurie Hendren , Oege de Moor , Ganesh Sittampalam , Clark Verbrugge, Measuring the dynamic behaviour of AspectJ programs, Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, October 24-28, 2004, Vancouver, BC, Canada
|
| |
13
|
|
 |
14
|
|
| |
15
|
R. Hamlet. Random testing. In Encyclopedia of Software Engineering, pages 970--978. Wiley, 1994.
|
 |
16
|
Jan Hannemann , Gregor Kiczales, Design pattern implementation in Java and aspectJ, Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, November 04-08, 2002, Seattle, Washington, USA
|
 |
17
|
Mark Harman , Youssef Hassoun , Kiran Lakhotia , Phil McMinn , Joachim Wegener, The impact of input domain reduction on search-based test data generation, Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering, September 03-07, 2007, Dubrovnik, Croatia
[doi> 10.1145/1287624.1287647]
|
| |
18
|
|
 |
19
|
|
| |
20
|
K. Inkumsah and T. Xie. Improving structural testing of object-oriented programs via integrating evolutionary testing and symbolic execution. In Proc. ASE, pages 297--306, 2008.
|
| |
21
|
S. Khurshid, C. S. Pasareanu, and W. Visser. Generalized symbolic execution for model checking and testing. In Proc. TACAS, pages 553--568, April 2003.
|
| |
22
|
Gregor Kiczales , Erik Hilsdale , Jim Hugunin , Mik Kersten , Jeffrey Palm , William G. Griswold, An Overview of AspectJ, Proceedings of the 15th European Conference on Object-Oriented Programming, p.327-353, June 18-22, 2001
|
| |
23
|
G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-oriented programming. In Proc. ECOOP, pages 220--242, 1997.
|
 |
24
|
|
| |
25
|
|
| |
26
|
|
 |
27
|
|
| |
28
|
|
 |
29
|
Phil McMinn , Mark Harman , David Binkley , Paolo Tonella, The species per path approach to SearchBased test data generation, Proceedings of the 2006 international symposium on Software testing and analysis, July 17-20, 2006, Portland, Maine, USA
[doi> 10.1145/1146238.1146241]
|
| |
30
|
National Institute of Standards and Technology (NIST). The economic impacts of inadequate infrastructure for software testing, May 2002. Planning Report 02-3.
|
| |
31
|
Parasoft. Jtest manuals version 4.5. Online manual, April 2003. http://www.parasoft.com/.
|
| |
32
|
R. Pargas, M. Harrold, and R. Peck. Test-data generation using genetic algorithms. Software Testing, Verification and Reliability, 9(4):263--282, 1999.
|
| |
33
|
Radio Technical Commission for Aeronautics. RTCA DO178-B Software considerations in airborne systems and equipment certification, 1992.
|
 |
34
|
|
 |
35
|
|
 |
36
|
Peri Tarr , Harold Ossher , William Harrison , Stanley M. Sutton, Jr., N degrees of separation: multi-dimensional separation of concerns, Proceedings of the 21st international conference on Software engineering, p.107-119, May 16-22, 1999, Los Angeles, California, United States
[doi> 10.1145/302405.302457]
|
 |
37
|
|
 |
38
|
Nigel Tracey , John Clark , Keith Mander, Automated program flaw finding using simulated annealing, Proceedings of the 1998 ACM SIGSOFT international symposium on Software testing and analysis, p.73-81, March 02-04, 1998, Clearwater Beach, Florida, United States
|
| |
39
|
R. Vallée-Rai, L. Hendren, V. Sundaresan, P. Lam, E. Gagnon, and P. Co. Soot -- a Java optimization framework. In Proc. CASCON, pages 125--135, 1999.
|
| |
40
|
S. Wappler. Automatic generation of object-oriented unit tests using genetic programming. PhD thesis, Technical University of Berlin, 2008.
|
| |
41
|
J. Wegener, A. Baresel, and H. Sthamer. Evolutionary test environment for automatic structural testing. Information and Software Technology, 43(14):841--854, 2001.
|
| |
42
|
|
 |
43
|
|
| |
44
|
T. Xie, J. Zhao, D. Marinov, and D. Notkin. Automated test generation for AspectJ program. In Proc. WTAOP, 2005.
|
| |
45
|
|
 |
46
|
|
| |
47
|
D. Xu, W. Xu, and K. Nygard. A state-based approach to testing aspect-oriented programs. In Proc. SEKE, pages 366--371, 2005.
|
| |
48
|
|
| |
49
|
|
|