• DocumentCode
    2867835
  • Title

    Lightweight Automated Testing with Adaptation-Based Programming

  • Author

    Groce, Alex ; Fern, Alan ; Pinto, Joel ; Bauer, Thomas ; Alipour, Anahita ; Erwig, Martin ; Lopez, Carlos

  • Author_Institution
    Sch. of Electr. Eng. & Comput. Sci., Oregon State Univ., Corvallis, OR, USA
  • fYear
    2012
  • fDate
    27-30 Nov. 2012
  • Firstpage
    161
  • Lastpage
    170
  • Abstract
    This paper considers the problem of testing a container class or other modestly-complex API-based software system. Past experimental evaluations have shown that for many such modules, random testing and shape abstraction based model checking are effective. These approaches have proven attractive due to a combination of minimal requirements for tool/language support, extremely high usability, and low overhead. These "lightweight" methods are therefore available for almost any programming language or environment, in contrast to model checkers and concolic testers. Unfortunately, for the cases where random testing and shape abstraction perform poorly, there have been few alternatives available with such wide applicability. This paper presents a generalizable approach based on reinforcement learning (RL), using adaptation-based programming (ABP) as an interface to make RL-based testing (almost) as easy to apply and adaptable to new languages and environments as random testing. We show how learned tests differ from random ones, and propose a model for why RL works in this unusual (by RL standards) setting, in the context of a detailed large-scale experimental evaluation of lightweight automated testing methods.
  • Keywords
    application program interfaces; formal specification; learning (artificial intelligence); program testing; adaptation-based programming; concolic testers; large-scale experimental evaluation; lightweight automated testing methods; lightweight methods; modestly-complex API-based software system; past experimental evaluations; programming language; random testing; reinforcement learning; shape abstraction based model checking; Containers; Context; Libraries; Programming; Shape; reinforcement learning; software testing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Reliability Engineering (ISSRE), 2012 IEEE 23rd International Symposium on
  • Conference_Location
    Dallas, TX
  • ISSN
    1071-9458
  • Print_ISBN
    978-1-4673-4638-2
  • Type

    conf

  • DOI
    10.1109/ISSRE.2012.1
  • Filename
    6405364