Model-Based Test Oracle Generation for Automated Unit Testing of Agent Systems

被引:43
|
作者
Padgham, Lin [1 ]
Zhang, Zhiyong [1 ]
Thangarajah, John [1 ]
Miller, Tim [2 ]
机构
[1] RMIT Univ, Sch Comp Sci & Informat Technol, Melbourne, Vic 3001, Australia
[2] Univ Melbourne, Dept Comp & Informat Syst, Parkville, Vic 3010, Australia
关键词
Test oracles; unit testing; BDI agents;
D O I
10.1109/TSE.2013.10
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software testing remains the most widely used approach to verification in industry today, consuming between 30-50 percent of the entire development cost. Test input selection for intelligent agents presents a problem due to the very fact that the agents are intended to operate robustly under conditions which developers did not consider and would therefore be unlikely to test. Using methods to automatically generate and execute tests is one way to provide coverage of many conditions without significantly increasing cost. However, one problem using automatic generation and execution of tests is the oracle problem: How can we automatically decide if observed program behavior is correct with respect to its specification? In this paper, we present a model-based oracle generation method for unit testing belief-desire-intention agents. We develop a fault model based on the features of the core units to capture the types of faults that may be encountered and define how to automatically generate a partial, passive oracle from the agent design models. We evaluate both the fault model and the oracle generation by testing 14 agent systems. Over 400 issues were raised, and these were analyzed to ascertain whether they represented genuine faults or were false positives. We found that over 70 percent of issues raised were indicative of problems in either the design or the code. Of the 19 checks performed by our oracle, faults were found by all but 5 of these checks. We also found that 8 out the 11 fault types identified in our fault model exhibited at least one fault. The evaluation indicates that the fault model is a productive conceptualization of the problems to be expected in agent unit testing and that the oracle is able to find a substantial number of such faults with relatively small overhead in terms of false positives.
引用
收藏
页码:1230 / 1244
页数:15
相关论文
共 50 条
  • [1] An automated model-based test oracle for access control systems
    Bertolino, Antonia
    Daoudagh, Said
    Lonetti, Francesca
    Marchetti, Eda
    [J]. 2018 IEEE/ACM 13TH INTERNATIONAL WORKSHOP ON AUTOMATION OF SOFTWARE TEST (AST), 2018, : 2 - 8
  • [2] Test Oracle Strategies for Model-Based Testing
    Li, Nan
    Offutt, Jeff
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2017, 43 (04) : 372 - 395
  • [3] Test Framework Generation for Model-Based Testing in Embedded Systems
    Iyenghar, Padma
    [J]. 2011 37TH EUROMICRO CONFERENCE ON SOFTWARE ENGINEERING AND ADVANCED APPLICATIONS (SEAA 2011), 2011, : 267 - 274
  • [4] An Empirical Analysis of Test Oracle Strategies for Model-based Testing
    Li, Nan
    Offutt, Jeff
    [J]. 2014 IEEE SEVENTH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST), 2014, : 363 - 372
  • [5] Automated Unit Testing for Agent Systems
    Zhang, Zhiyong
    Thangarajah, John
    Padgham, Lin
    [J]. ENASE 2007: PROCEEDINGS OF THE SECOND INTERNATIONAL CONFERENCE ON EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING, 2007, : 10 - 18
  • [6] Challenges for Automated, Model-Based Test Scenario Generation
    Kolchin, Alexander
    Potiyenko, Stepan
    Weigert, Thomas
    [J]. INFORMATION AND SOFTWARE TECHNOLOGIES, ICIST 2019, 2019, 1078 : 182 - 194
  • [7] Automated Unit Testing in Model-based Embedded Software Development
    Luckeneder, Christoph
    Kaindl, Hermann
    Korinek, Martin
    [J]. ICSOFT: PROCEEDINGS OF THE 12TH INTERNATIONAL CONFERENCE ON SOFTWARE TECHNOLOGIES, 2017, : 427 - 434
  • [8] An automated model-based approach for unit-level performance test generation of mobile applications
    Usman, Muhammad
    Iqbal, Muhammad Zohaib
    Khan, Muhammad Uzair
    [J]. JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2020, 32 (01)
  • [9] Distributed Online Test Generation for Model-Based Testing
    Kanstren, Teemu
    Kekkonen, Tuomas
    [J]. 2013 20TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2013), VOL 1, 2013, : 255 - 262
  • [10] A Model-based Test Case Generation Method for Function Testing of Train Control Systems
    Lv, Jidong
    Wang, Haifeng
    Liu, Hongjie
    Zhang, Lu
    Tang, Tao
    [J]. 2016 IEEE INTERNATIONAL CONFERENCE ON INTELLIGENT RAIL TRANSPORTATION (ICIRT), 2016, : 334 - 346