Selecting Software Test Data Using Data Flow Information
IEEE Transactions on Software Engineering
The evaluation of program-based software test data adequacy criteria
Communications of the ACM
Test data selection criteria for (software) integration testing
ISCI '90 Proceedings of the first international conference on systems integration on Systems integration '90
Performing data flow testing on classes
SIGSOFT '94 Proceedings of the 2nd ACM SIGSOFT symposium on Foundations of software engineering
Inter-class def-use analysis with partial class representations
Proceedings of the 1999 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Automatic test data generation for path testing using GAs
Information Sciences: an International Journal
Communications of the ACM
ICSE '76 Proceedings of the 2nd international conference on Software engineering
Data-Flow-Based Unit Testing of Aspect-Oriented Programs
COMPSAC '03 Proceedings of the 27th Annual International Conference on Computer Software and Applications
The Art of Software Testing
A classification system and analysis for aspect-oriented programs
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
Using Pointcut Delta Analysis to Support Evolution of Aspect-Oriented Software
ICSM '05 Proceedings of the 21st IEEE International Conference on Software Maintenance
State-based incremental testing of aspect-oriented programs
Proceedings of the 5th international conference on Aspect-oriented software development
Distribution and persistence as aspects
Software—Practice & Experience - Research Articles
Testing aspect-oriented programming Pointcut Descriptors
Proceedings of the 2nd workshop on Testing aspect-oriented programs
Establishing structural testing criteria for Java bytecode
Software—Practice & Experience
Control and data flow structural testing criteria for aspect-oriented programs
Journal of Systems and Software
Regression Test Selection for AspectJ Software
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Software Testing Research: Achievements, Challenges, Dreams
FOSE '07 2007 Future of Software Engineering
On Identifying Bug Patterns in Aspect-Oriented Programs
COMPSAC '07 Proceedings of the 31st Annual International Computer Software and Applications Conference - Volume 01
QUATIC '07 Proceedings of the 6th International Conference on Quality of Information and Communications Technology
Proceedings of the 7th international conference on Aspect-oriented software development
Tool support for understanding and diagnosing pointcut expressions
Proceedings of the 7th international conference on Aspect-oriented software development
Towards reusable components with aspects: an empirical study on modularity and obliviousness
Proceedings of the 30th international conference on Software engineering
Evolving software product lines with aspects: an empirical study on design stability
Proceedings of the 30th international conference on Software engineering
Search based software testing of object-oriented containers
Information Sciences: an International Journal
Mutation Testing for Aspect-Oriented Programs
ICST '08 Proceedings of the 2008 International Conference on Software Testing, Verification, and Validation
Automated Generation of Pointcut Mutants for Testing Pointcuts in AspectJ Programs
ISSRE '08 Proceedings of the 2008 19th International Symposium on Software Reliability Engineering
Science of Computer Programming
Debugging aspect-enabled programs
SC'07 Proceedings of the 6th international conference on Software composition
An exploratory study of fault-proneness in evolving aspect-oriented programs
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
Journal of Systems and Software
The crosscutting impact of the AOSD Brazilian research community
Journal of Systems and Software
A critical review of various testing techniques in aspect-oriented software systems
ACM SIGSOFT Software Engineering Notes
Hi-index | 0.07 |
Aspect-oriented programming (AOP) is a promising technology that supports separation of crosscutting concerns (i.e., functionality that tends to be tangled with, and scattered through the rest of the system). In AOP, a method-like construct named advice is applied to join points in the system through a special construct named pointcut. This mechanism supports the modularization of crosscutting behavior; however, since the added interactions are not explicit in the source code, it is hard to ensure their correctness. To tackle this problem, this paper presents a rigorous coverage analysis approach to ensure exercising the logic of each advice - statements, branches, and def-use pairs - at each affected join point. To make this analysis possible, a structural model based on Java bytecode - called PointCut-based Def-Use Graph (PCDU) - is proposed, along with three integration testing criteria. Theoretical, empirical, and exploratory studies involving 12 aspect-oriented programs and several fault examples present evidence of the feasibility and effectiveness of the proposed approach.