Test Oracle Strategies for Model-Based Testing

被引:40
|
作者
Li, Nan [1 ]
Offutt, Jeff [2 ]
机构
[1] Medidata Solut, Div Res & Dev, New York, NY 10014 USA
[2] George Mason Univ, Fairfax, VA 22030 USA
关键词
Test oracle; RIPR model; test oracle strategy; test automation; subsumption; model-based testing; MUTATION;
D O I
10.1109/TSE.2016.2597136
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Testers use model-based testing to design abstract tests from models of the system's behavior. Testers instantiate the abstract tests into concrete tests with test input values and test oracles that check the results. Given the same test inputs, more elaborate test oracles have the potential to reveal more failures, but may also be more costly. This research investigates the ability for test oracles to reveal failures. We define ten new test oracle strategies that vary in amount and frequency of program state checked. We empirically compared them with two baseline test oracle strategies. The paper presents several main findings. (1) Test oracles must check more than runtime exceptions because checking exceptions alone is not effective at revealing failures. (2) Test oracles do not need to check the entire output state because checking partial states reveals nearly as many failures as checking entire states. (3) Test oracles do not need to check program states multiple times because checking states less frequently is as effective as checking states more frequently. In general, when state machine diagrams are used to generate tests, checking state invariants is a reasonably effective low cost approach to creating test oracles.
引用
收藏
页码:372 / 395
页数:24
相关论文
共 50 条
  • [31] Test case prioritization techniques for model-based testing: a replicated study
    João Felipe S. Ouriques
    Emanuela G. Cartaxo
    Patrícia D. L. Machado
    Software Quality Journal, 2018, 26 : 1451 - 1482
  • [32] Test case prioritization techniques for model-based testing: a replicated study
    Ouriques, Joao Felipe S.
    Cartaxo, Emanuela G.
    Machado, Patricia D. L.
    SOFTWARE QUALITY JOURNAL, 2018, 26 (04) : 1451 - 1482
  • [33] TestML - A test exchange language for model-based testing of embedded software
    Grossmann, Juergen
    Fey, Ines
    Krupp, Alexander
    Conrad, Mirko
    Wewetzer, Christian
    Mueller, Wolfgang
    MODEL-DRIVEN DEVELOPMENT OF RELIABLE AUTOMOTIVE SERVICES, 2008, 4922 : 98 - +
  • [34] How to test Security? Model-based Security Testing for the Automotive Industry
    Kremer, Wolfgang
    Schulze, Andreas
    Grossmann, Juergen
    AUTOMOTIVE SECURITY, 2011, 2011, 2131 : 137 - 164
  • [35] Increasing test efficiency by risk-driven model-based testing
    Gebizli, Ceren Sahin
    Kirkici, Abdulhadi
    Sozer, Hasan
    JOURNAL OF SYSTEMS AND SOFTWARE, 2018, 144 : 356 - 365
  • [36] SATE: Model-Based Testing with Design-to-Test and Plant Features
    Ma, Canlong
    Jordan, Claudius
    Provost, Julien
    IFAC PAPERSONLINE, 2018, 51 (07): : 310 - 315
  • [37] Test generation with Satisfiability Modulo Theories solvers in model-based testing
    Cantenot, Jerome
    Ambert, Fabrice
    Bouquet, Fabrice
    SOFTWARE TESTING VERIFICATION & RELIABILITY, 2014, 24 (07): : 499 - 531
  • [38] On the Influence of Model Structure and Test Case Profile on the Prioritization of Test Cases in the Context of Model-based Testing
    Ouriques, Joao Felipe S.
    Cartaxo, Emanuela G.
    Machado, Patricia D. L.
    2013 27TH BRAZILIAN SYMPOSIUM ON SOFTWARE ENGINEERING (SBES 2013), 2013, : 119 - 128
  • [39] Strategies in model-based diagnosis
    Frohlich, P
    Nejdl, W
    Schroeder, M
    JOURNAL OF AUTOMATED REASONING, 1998, 20 (1-2) : 81 - 105
  • [40] Strategies in Model-based Diagnosis
    Peter Fröhlich
    Wolfgang Nejdl
    Michael Schroeder
    Journal of Automated Reasoning, 1998, 20 : 81 - 105