• DocumentCode
    2865793
  • Title

    Testing C++ generic libraries

  • Author

    Sutton, Andrew ; Zalewski, M.

  • Author_Institution
    Compute Sci. & Eng., Texas A&M Univ., College Station, TX, USA
  • fYear
    2012
  • fDate
    23-28 Sept. 2012
  • Firstpage
    36
  • Lastpage
    45
  • Abstract
    We describe a novel methodology for systematic and rigorous testing of C++ generic libraries: separate testing. The approach is based on separate testing of generic (template) algorithms and data structures and of user-defined types that will be used with the library. Templates are tested against specifications using representative types called prototypes that contain metadata which is used to query otherwise unobservable properties of the input types and values. User-defined types are tested against the concepts required by the generic components of the library. Testing separately minimizes the required effort while fully exercising all components involved. The methodology is supported by the Origin Testing library, which is, in turn, being used to test the remainder of the Origin C++ 11 libraries.
  • Keywords
    C++ language; data structures; formal specification; meta data; program testing; software libraries; C++ generic libraries; Origin C++ 11 libraries; Origin Testing library; data structure; generic algorithm; metadata; of user-defined type; prototype; representative type; rigorous testing; specification; systematic testing; template algorithm; Algorithm design and analysis; Data structures; Libraries; Prototypes; Semantics; Standards; Testing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance (ICSM), 2012 28th IEEE International Conference on
  • Conference_Location
    Trento
  • ISSN
    1063-6773
  • Print_ISBN
    978-1-4673-2313-0
  • Type

    conf

  • DOI
    10.1109/ICSM.2012.6405251
  • Filename
    6405251