Testing Data Consistency of Data-Intensive Applications Using QuickCheck

被引:5
|
作者
Castro, Laura M. [1 ]
Arts, Thomas [2 ]
机构
[1] Univ A Coruna, Dept Comp Sci, La Coruna, Spain
[2] Chalmers Univ, Comp Sci & Engn, Gothenburg, Sweden
关键词
Software verification; Software testing; Model Based Testing; Software Tools; QuickCheck;
D O I
10.1016/j.entcs.2011.02.010
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Many software systems are data-intensive and use a data management systems for data storage, such as Relational Database Management Systems (RDBMS). RDBMSs are used to store information in a structured manner, and to define several types of constraints on the data, to maintain basic consistency. The RDBMSs are mature, well tested, software products that one can trust to reliably store data and keep it consistent within the defined constraints. There are, however, scenarios in which passing the responsibility of consistency enforcement to the RDBMS is not convenient, or simply not possible. In such cases, the alternative is to have that responsibility at the business logic level of the system. Hence, from the point of view of testing data-intensive applications, one of the most relevant aspects is to ensure correctness of the business logic in terms of data consistency. In this article, we show how QuickCheck, a tool for random testing against specifications, can be used to test the business logic of an application to increase confidence on data integrity. We build an abstract model of the data containing the minimum information necessary to create meaningful test cases, while keeping its state substantially smaller than the data in the complete database. From the abstract model we automatically generate and execute test cases which check that data constraints are preserved.
引用
收藏
页码:41 / 62
页数:22
相关论文
共 50 条
  • [31] Enhancing Parallelism of Data-Intensive Bioinformatics Applications
    Xie, Zheng
    Han, Liangxiu
    Baldock, Richard
    2013 8TH EUROSIM CONGRESS ON MODELLING AND SIMULATION (EUROSIM), 2013, : 519 - 524
  • [32] Conceptual modeling of data-intensive Web applications
    Ceri, S
    Fraternali, P
    Matera, M
    IEEE INTERNET COMPUTING, 2002, 6 (04) : 20 - 30
  • [33] Privacy-Aware Data-Intensive Applications
    Guerriero, Michele
    PROCEEDINGS OF THE 2017 32ND IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE'17), 2017, : 1030 - 1033
  • [34] Memory Hotspot Optimization for Data-Intensive Applications
    2019 28TH INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES (PACT 2019), 2019, : 466 - 467
  • [35] Probabilistic advisory systems for data-intensive applications
    Quinn, A
    Ettler, P
    Jirsa, L
    Nagy, I
    Nedoma, P
    INTERNATIONAL JOURNAL OF ADAPTIVE CONTROL AND SIGNAL PROCESSING, 2003, 17 (02) : 133 - 148
  • [36] A dynamically reconfigurable IP for data-intensive applications
    Miyamoto, N
    Karnan, L
    Kotani, K
    Ohmi, T
    PROCEEDINGS OF 2004 IEEE ASIA-PACIFIC CONFERENCE ON ADVANCED SYSTEM INTEGRATED CIRCUITS, 2004, : 404 - 405
  • [37] A framework for the internationalization of data-intensive Web applications
    Belussi, A
    Posenato, R
    WEB ENGINEERING, PROCEEDINGS, 2004, 3140 : 478 - 482
  • [38] Acceleration of Data-Intensive Workflow Applications by Using File Access History
    Horiuchi, Miki
    Taura, Kenjiro
    2012 SC COMPANION: HIGH PERFORMANCE COMPUTING, NETWORKING, STORAGE AND ANALYSIS (SCC), 2012, : 157 - 165
  • [39] Impacts of data consistency levels in cloud-based NoSQL for data-intensive applications (vol 13, 158, 2024)
    Ferreira, Saulo
    Mendonca, Julio
    Nogueira, Bruno
    Tiengo, Willy
    Andrade, Ermeson
    JOURNAL OF CLOUD COMPUTING-ADVANCES SYSTEMS AND APPLICATIONS, 2025, 14 (01):
  • [40] Platform-independent programming of data-intensive applications using UML
    Falda, Grzegorz
    Habela, Piotr
    Kaczmarski, Krzysztof
    Stencel, Krzysztof
    Subieta, Kazimierz
    BALANCING AGILITY AND FORMALISM IN SOFTWARE ENGINEERING, 2008, 5082 : 103 - +