LLM Based Input Space Partitioning Testing for Library APIs
Jiageng Li, Zhen Dong, Chong Wang, Haozhen You, Cen Zhang, Yang Liu,, Xin Peng

TL;DR
This paper introduces LISP, an LLM-based approach for systematically testing library APIs by understanding code and partitioning input spaces, leading to higher coverage and vulnerability discovery.
Contribution
The paper presents a novel LLM-driven method for input space partitioning in API testing, improving coverage and vulnerability detection over existing techniques.
Findings
LISP achieves 67.82% branch coverage, outperforming EvoSuite.
LISP discovers 13 new vulnerabilities with assigned CVE IDs.
LISP triggers 404 exceptions across tested APIs.
Abstract
Automated library APIs testing is difficult as it requires exploring a vast space of parameter inputs that may involve objects with complex data types. Existing search based approaches, with limited knowledge of relations between object states and program branches, often suffer from the low efficiency issue, i.e., tending to generate invalid inputs. Symbolic execution based approaches can effectively identify such relations, but fail to scale to large programs. In this work, we present an LLM-based input space partitioning testing approach, LISP, for library APIs. The approach leverages LLMs to understand the code of a library API under test and perform input space partitioning based on its understanding and rich common knowledge. Specifically, we provide the signature and code of the API under test to LLMs, with the expectation of obtaining a text description of each input space…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed and Parallel Computing Systems · Embedded Systems and FPGA Design · Advanced Data Storage Technologies
