• DocumentCode
    2228765
  • Title

    Efficient Mutant Generation for Mutation Testing of Pointcuts in Aspect-Oriented Programs

  • Author

    Anbalagan, Prasanth ; Xie, Tao

  • Author_Institution
    Dept. of Comput. Sci., North Carolina State Univ., Raleigh, NC
  • fYear
    2006
  • fDate
    7-10 Nov. 2006
  • Firstpage
    3
  • Lastpage
    3
  • Abstract
    Fault-based testing is an approach where the designed test data is used to demonstrate the absence of a set of prespecified faults, typically being frequently occurring faults. Mutation testing is a fault-based testing technique used to inject faults into an existing program, i.e., a variation of the original program and see if the test suite is sensitive enough to detect common faults. Aspect-oriented programming (AOP) provides new modularization of software systems by encapsulating crosscutting concerns. AspectJ, a language designed to support AOP uses abstractions like pointcuts, advice, and aspects to achieve AOP´s primary functionality. Developers tend to write pointcut expressions with incorrect strength, thereby selecting additional events than intended to or leaving out necessary events. This incorrect strength causes aspects, the set of crosscutting concerns, to fail. Hence there is a need to test the pointcuts for their strength. Mutation testing of pointcuts includes two steps: creating effective mutants (variations) of a pointcut expression and testing these mutants using the designed test data. The number of mutants for a pointcut expression is usually large due to the usage of wildcards. It is tedious to manually identify effective mutants that are of appropriate strength and resemble closely the original pointcut expression. Our framework automatically generates mutants for a pointcut expression and identifies mutants that resemble closely the original expression. Then the developers could use the test data for the woven classes against these mutants to perform mutation testing.
  • Keywords
    object-oriented programming; program testing; AspectJ language; aspect-oriented programs; fault-based testing; mutant generation; mutation testing; pointcuts; software system modularization; Computer science; Costs; Fault detection; Genetic mutations; Performance evaluation; Programming profession; Software systems; Software testing; Weaving;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Mutation Analysis, 2006. Second Workshop on
  • Conference_Location
    Raleigh, NC
  • Print_ISBN
    0-7695-2897-X
  • Type

    conf

  • DOI
    10.1109/MUTATION.2006.3
  • Filename
    4144722