FinHunter: Improved Search-Based Test Generation for Structural Testing of FinTech Systems

Xuanwen Ding, Qingshun Wang, Dan Liu, Lihua Xu*, Jun Xiao, Bojun Zhang, Xue Li, Liang Dou*, Liang He, Tao Xie

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

1 Scopus citations

Abstract

Ensuring high quality of software systems is highly critical in mission-critical industrial sectors such as FinTech. To test such systems, replaying the historical data (typically in the form of input field values) recorded during system real usage has been quite valuable in industrial practices; augmenting the recorded data by crossing over and mutating them (as seed inputs) can further improve the structural coverage achieved by testing. However, the existing augmentation approaches based on search-based test generation face three major challenges: (1) the recorded data used as seed inputs for search-based test generation are often insufficient for achieving high structural coverage, (2) randomly crossing over individual primitive field values easily breaks the input constraints (which are often not documented) among multiple related fields, leading to invalid test inputs, and (3) randomly crossing over constituent primitive fields within a composite field easily breaks the input constraints (which are often not documented) among these constituent primitive fields, leading to invalid test inputs. To address these challenges, in this paper, we propose FinHunter, a search-based test generation framework that improves a genetic algorithm for structural testing. FinHunter includes the technique of gene-pool expansion to address the insufficient seeds for search-based test generation, and the technique of multi-level crossover to address input-constraint violations during crossover. We apply FinHunter in the Ant Group to test a real commercial system, with more than 100,000 lines of code, and 46 different interfaces each of which corresponds to a service in the system. The system provides a range of services, including customer application processing, analysis, appraisal, credit extension decision-making, and implementation. Our experimental results show that FinHunter outperforms the current practice in the Ant Group and the traditional genetic algorithm.

Original languageEnglish
Title of host publicationFSE Companion - Companion Proceedings of the 32nd ACM International Conference on the Foundations of Software Engineering
EditorsMarcelo d�Amorim
PublisherAssociation for Computing Machinery, Inc
Pages10-20
Number of pages11
ISBN (Electronic)9798400706585
DOIs
StatePublished - 10 Jul 2024
Event32nd ACM International Conference on the Foundations of Software Engineering, FSE Companion - Porto de Galinhas, Brazil
Duration: 15 Jul 202419 Jul 2024

Publication series

NameFSE Companion - Companion Proceedings of the 32nd ACM International Conference on the Foundations of Software Engineering

Conference

Conference32nd ACM International Conference on the Foundations of Software Engineering, FSE Companion
Country/TerritoryBrazil
CityPorto de Galinhas
Period15/07/2419/07/24

Keywords

  • FinTech
  • automated test generation
  • genetic algorithm

Fingerprint

Dive into the research topics of 'FinHunter: Improved Search-Based Test Generation for Structural Testing of FinTech Systems'. Together they form a unique fingerprint.

Cite this