Automatic test cases generation from formal contracts

被引:0
|
作者
Gil, Samuel Jimenez [1 ]
Capel, Manuel I. [2 ]
Olea, Gabriel [2 ]
机构
[1] SatixFy Space Syst UK, Trident Unit 2, Styal Rd, Manchester M22 5XB, England
[2] Univ Granada, Dept Software Engn, ETSIIT, Granada 18071, Spain
关键词
Automatic test cases generation; Software testing; Formal methods; Software verification;
D O I
10.1016/j.infsof.2024.107467
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Context: Software verification for critical systems is facing an unprecedented cost increase due to the large amount of software packed in multicore platforms generally. A substantial amount of the verification efforts are dedicated to testing. Spark/Ada is a language often employed in safety -critical systems due to its high reliability. Formal contracts are often inserted in Spark's program specification to be used by a static theorem prover that checks whether the specification conforms with the implementation. However, this static analysis has its limitations as certain bugs can only be spotted through software testing. Objective: The main goal of our work is to use these formal contracts in Spark as input for a test oracle - whose method we describe - to generate test cases. Subsequent objectives consist of a) arguing about the traceability to comply with safety -critical software standards such as DO -178C for civil avionics and b) embracing the best -established software testing methods for these systems. Method: Our test generation method reads Spark formal contracts and applies Equivalence Class Partitioning with Boundary Analysis as a software testing method generating traceable test cases. Results: The evaluation, which uses an array of open -source examples of Spark contracts, shows a high level of passed test cases and statement coverage. The results are also compared against a random test generator. Conclusion: The proposed method is very effective at achieving a high number of passed test cases and coverage. We make the case that the effort to create formal specifications for Spark can be used both for proof and (automatic) testing. Lastly, we noticed that some formal contracts are more suitable than others for our test generation.
引用
收藏
页数:13
相关论文
共 50 条
  • [41] Automatic generation method of LDP test cases using Design/CPN
    Lee, H
    Lee, B
    PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED PROCESSING TECHNIQUES AND APPLICATIONS, VOLS I-V, 2000, : 2725 - 2729
  • [42] Automatic generation of test cases for payload system based on improved OOPN
    He Y.-F.
    Zhao G.-H.
    Guo L.-L.
    Lü C.-M.
    Xi Tong Gong Cheng Yu Dian Zi Ji Shu/Systems Engineering and Electronics, 2010, 32 (11): : 2470 - 2475
  • [43] Controlling test case explosion in test generation from B formal models
    Legeard, B
    Peureux, F
    Utting, M
    SOFTWARE TESTING VERIFICATION & RELIABILITY, 2004, 14 (02): : 81 - 103
  • [44] From the formal specifications of users tasks to the automatic generation of the HCI specifications
    Mahfoudhi, A
    Abed, M
    Tabary, D
    PEOPLE AND COMPUTERS XV - INTERACTION WITHOUT FRONTIERS, 2001, : 331 - 347
  • [45] THE ANALYSIS OF AN AUTOMATIC METHOD FOR DIGITAL TERRAIN MODEL GENERATION FROM LIDAR DATA ON SLOVENIAN TEST CASES
    Mongus, Domen
    Cekada, Mihaela Triglav
    Zalik, Borut
    GEODETSKI VESTNIK, 2013, 57 (02) : 245 - 259
  • [46] Automatic Generation of Acceptance Test Cases From Use Case Specifications: An NLP-Based Approach
    Wang, Chunhui
    Pastore, Fabrizio
    Goknil, Arda
    Briand, Lionel C.
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2022, 48 (02) : 585 - 616
  • [47] Test-sequence generation from formal requirement models
    Rayadurgam, S
    Heimdahl, MPE
    SIXTH IEEE INTERNATIONAL SYMPOSIUM ON HIGH ASSURANCE SYSTEMS ENGINEERING, 2001, : 23 - 31
  • [48] KVEST: Automated generation of test suites from formal specifications
    Burdonov, I
    Kossatchev, A
    Petrenko, A
    Galter, D
    FM'99-FORMAL METHODS, 1999, 1708 : 608 - 621
  • [49] Boundary coverage criteria for test generation from formal models
    Kosmatov, N
    Legeard, B
    15TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING, PROCEEDINGS, 2004, : 139 - 150
  • [50] Automatic construction and verification algorithm for smart contracts based on formal verification
    Xie, Rui
    Zhong, Xuejiao
    Chen, Xin
    Xu, Shaohui
    Yu, Haiyang
    Guo, Xinyuan
    AIP ADVANCES, 2024, 14 (11)