Enhancing Search-based Testing with Testability Transformations for Existing APIs

被引:21
作者
Arcuri, Andrea [1 ,2 ]
Galeotti, Juan P. [3 ,4 ,5 ]
机构
[1] Kristiania Univ Coll, Prinsens Gate 7-9, N-0152 Oslo, Norway
[2] Oslo Metropolitan Univ, Prinsens Gate 7-9, N-0152 Oslo, Norway
[3] Univ Buenos Aires, Fac Ciencias Exactas & Nat, Dept Computat, Buenos Aires, DF, Argentina
[4] CONICET UBA, ICC, Buenos Aires, DF, Argentina
[5] Pabellon 1,Ciudad Univ,Intendente Guiraldes 2160, Buenos Aires, DF, Argentina
基金
欧洲研究理事会;
关键词
SBST; test generation; testability transformation; system testing; REST; TEST DATA GENERATION; SYMBOLIC EXECUTION; SOFTWARE; SUITE;
D O I
10.1145/3477271
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Search-based software testing (SBST) has been shown to be an effective technique to generate test cases automatically. Its effectiveness strongly depends on the guidance of the fitness function. Unfortunately, a common issue in SBST is the so-called flag problem, where the fitness landscape presents a plateau that provides no guidance to the search. In this article, we provide a series of novel testability transformations aimed at providing guidance in the context of commonly used API calls (e.g., strings that need to be converted into valid date/time objects). We also provide specific transformations aimed at helping the testing of REST Web Services. We implemented our novel techniques as an extension to EvoMaster, an SBST tool that generates system-level test cases. Experiments on nine open-source REST web services, as well as an industrial web service, show that our novel techniques improve performance significantly.
引用
收藏
页数:34
相关论文
共 55 条
  • [1] A Systematic Review of the Application and Empirical Investigation of Search-Based Test Case Generation
    Ali, Shaukat
    Briand, Lionel C.
    Hemmati, Hadi
    Panesar-Walawege, Rajwinder K.
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2010, 36 (06) : 742 - 762
  • [2] Deploying Search Based Software Engineering with Sapienz at Facebook
    Alshahwan, Nadia
    Gao, Xinbo
    Harman, Mark
    Jia, Yue
    Mao, Ke
    Mols, Alexander
    Tei, Taijin
    Zorin, Ilya
    [J]. SEARCH-BASED SOFTWARE ENGINEERING, SSBSE 2018, 2018, 11036 : 3 - 45
  • [3] Search-based software test data generation for string data using program-specific search operators
    Alshraideh, Mohammad
    Bottaci, Leonardo
    [J]. SOFTWARE TESTING VERIFICATION & RELIABILITY, 2006, 16 (03) : 175 - 203
  • [4] [Anonymous], RestAssured
  • [5] [Anonymous], OPENAPI SWAGGER
  • [6] [Anonymous], Spring framework
  • [7] Arcuri A., 2021, J OPEN SOURCE SOFTW, V6
  • [8] Automated Black- and White-Box Testing of RESTful APIs With EvoMaster
    Arcuri, Andrea
    [J]. IEEE SOFTWARE, 2021, 38 (03) : 72 - 78
  • [9] Handling SQL Databases in Automated System Test Generation
    Arcuri, Andrea
    Galeotti, Juan P.
    [J]. ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2020, 29 (04)
  • [10] Testability Transformations For Existing APIs
    Arcuri, Andrea
    Galeotti, Juan P.
    [J]. 2020 IEEE 13TH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VALIDATION AND VERIFICATION (ICST 2020), 2020, : 153 - 163