• DocumentCode
    1759974
  • Title

    An Automated Test Generation Technique for Software Quality Assurance

  • Author

    Dianxiang Xu ; Weifeng Xu ; Kent, Michael ; Thomas, Lijo ; Linzhang Wang

  • Author_Institution
    Dept. of Comput. Sci., Boise State Univ., Boise, ID, USA
  • Volume
    64
  • Issue
    1
  • fYear
    2015
  • fDate
    42064
  • Firstpage
    247
  • Lastpage
    268
  • Abstract
    The world´s increased dependence on software-enabled systems has raised major concerns about software reliability and security. New cost-effective tools for software quality assurance are needed. This paper presents an automated test generation technique, called Model-based Integration and System Test Automation (MISTA), for integrated functional and security testing of software systems. Given a Model-Implementation Description (MID) specification, MISTA generates test code that can be executed immediately with the implementation under test. The MID specification uses a high-level Petri net to capture both control- and data-related requirements for functional testing, access control testing, or penetration testing with threat models. After generating test cases from the test model according to a given criterion, MISTA converts the test cases into executable test code by mapping model-level elements into implementation-level constructs. MISTA has implemented test generators for various test coverage criteria of test models, code generators for various programming and scripting languages, and test execution environments such as Java, C, C++, C#, HTML-Selenium IDE, and Robot Framework. MISTA has been applied to the functional and security testing of various real-world software systems. Our experiments have demonstrated that MISTA can be highly effective in fault detection.
  • Keywords
    Petri nets; program testing; software quality; C language; C# language; C++ language; HTML-Selenium IDE; Java language; MID specification; MISTA technique; Robot Framework; access control testing; automated test generation technique; control-related requirements; data-related requirements; functional testing; high-level Petri net; integrated functional testing; integrated security testing; model-based integration and system test automation; model-implementation description; model-level elements; penetration testing; software quality assurance; software-enabled system; test code generation; Access control; Games; Inhibitors; Object oriented modeling; Testing; Unified modeling language; Functional testing; Petri nets; model-based testing; security testing; software assurance;
  • fLanguage
    English
  • Journal_Title
    Reliability, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9529
  • Type

    jour

  • DOI
    10.1109/TR.2014.2354172
  • Filename
    6915770