A Test-Driven Approach to Developing Pointcut Descriptors in AspectJ

被引:13
|
作者
Delamare, Romain [1 ]
Baudry, Benoit [1 ]
Ghosh, Sudipto [2 ]
Le Traon, Yves [3 ]
机构
[1] IRISA INRIA Rennes, Rennes, France
[2] Colorado State Univ, Colorado Springs, CO USA
[3] T Telecom Bretagn, Plouzane, France
关键词
Aspect-oriented programming; joinpoints; pointcut descriptors; mutation analysis; test-driven development; testing tool;
D O I
10.1109/ICST.2009.41
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Aspect-oriented programming (AOP) languages introduce new constructs that can lead to new types of faults, which must be targeted by testing techniques. In particular AOP languages such as AspectJ use a point-cut descriptor (PCD) that provides a convenient way to declaratively specify a set of joinpoints in the protogram where the aspect should be woven. However a major difficulty when testing that the PCD matches the intended set of joinpoints is the lack of precise specification for this set other than the PCD itself. In this paper we propose a test-driven approach for the development and validation of the PCD. We developed a tool, AdviceTracer which enriches the JUnit API with new types of assertions that can be used to specify the expected joinpoints. In order to validate our approach, we also developed a mutation tool that systematically injects faults into PCDs. Using these two tools, we perform experiments to validate that our approach can be applied for specifying expected joinpoints and for detecting faults in the PCD.
引用
收藏
页码:376 / +
页数:2
相关论文
共 50 条
  • [41] A structured experiment of test-driven development
    George, B
    Williams, L
    INFORMATION AND SOFTWARE TECHNOLOGY, 2004, 46 (05) : 337 - 342
  • [42] Test-driven development and software maintenance
    Tilley, S
    20TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, PROCEEDINGS, 2004, : 488 - 489
  • [43] Test-Driven Development of Model Transformations
    Giner, Pau
    Pelechano, Vicente
    MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2009, 5795 : 748 - 752
  • [44] Test-driven modelling for model-driven development
    Zhang, YF
    IEEE SOFTWARE, 2004, 21 (05) : 80 - +
  • [45] DigiCAV project: Exploring a Test-Driven Approach in the Development of Connected and Autonomous Vehicles
    Kyriakopoulos, Ioannis
    Jaworski, Pawel
    Kanarachos, Stratis
    2019 8TH IEEE INTERNATIONAL CONFERENCE ON CONNECTED VEHICLES AND EXPO (IIEEE CCVE), 2019,
  • [46] Formal Test-Driven Development with Verified Test Cases
    Aichernig, Bernhard K.
    Lorber, Florian
    Tiran, Stefan
    PROCEEDINGS OF THE 2014 2ND INTERNATIONAL CONFERENCE ON MODEL-DRIVEN ENGINEERING AND SOFTWARE DEVELOPMENT (MODELSWARD 2014), 2014, : 626 - 635
  • [47] Test-Driven Development for Spreadsheet Risk Management
    McDaid, Kevin
    Rust, Alan
    IEEE SOFTWARE, 2009, 26 (05) : 31 - 36
  • [48] Test-driven verification/validation of model transformations
    László Lengyel
    Hassan Charaf
    Frontiers of Information Technology & Electronic Engineering, 2015, 16 : 85 - 97
  • [49] Test-Driven Service Discovery in Mobile Environments
    Duda, Ingrid
    Hummel, Oliver
    2009 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING WORKSHOPS (ICPPW 2009), 2009, : 443 - +
  • [50] The effect of experience on the test-driven development process
    Matthias M. Müller
    Andreas Höfer
    Empirical Software Engineering, 2007, 12 : 593 - 615