Constraint-Guided Unit Test Generation for Machine Learning Libraries

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Krodinger, Lukas, Hajdari, Altin, Lukasczyk, Stephan, Fraser, Gordon
Format: Preprint
Published: 2025
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866918157990494208
author Krodinger, Lukas
Hajdari, Altin
Lukasczyk, Stephan
Fraser, Gordon
author_facet Krodinger, Lukas
Hajdari, Altin
Lukasczyk, Stephan
Fraser, Gordon
contents Machine learning (ML) libraries such as PyTorch and TensorFlow are essential for a wide range of modern applications. Ensuring the correctness of ML libraries through testing is crucial. However, ML APIs often impose strict input constraints involving complex data structures such as tensors. Automated test generation tools such as Pynguin are not aware of these constraints and often create non-compliant inputs. This leads to early test failures and limited code coverage. Prior work has investigated extracting constraints from official API documentation. In this paper, we present PynguinML, an approach that improves the Pynguin test generator to leverage these constraints to generate compliant inputs for ML APIs, enabling more thorough testing and higher code coverage. Our evaluation is based on 165 modules from PyTorch and TensorFlow, comparing PynguinML against Pynguin. The results show that PynguinML significantly improves test effectiveness, achieving up to 63.9 % higher code coverage.
format Preprint
id arxiv_https___arxiv_org_abs_2510_09108
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Constraint-Guided Unit Test Generation for Machine Learning Libraries
Krodinger, Lukas
Hajdari, Altin
Lukasczyk, Stephan
Fraser, Gordon
Software Engineering
Machine learning (ML) libraries such as PyTorch and TensorFlow are essential for a wide range of modern applications. Ensuring the correctness of ML libraries through testing is crucial. However, ML APIs often impose strict input constraints involving complex data structures such as tensors. Automated test generation tools such as Pynguin are not aware of these constraints and often create non-compliant inputs. This leads to early test failures and limited code coverage. Prior work has investigated extracting constraints from official API documentation. In this paper, we present PynguinML, an approach that improves the Pynguin test generator to leverage these constraints to generate compliant inputs for ML APIs, enabling more thorough testing and higher code coverage. Our evaluation is based on 165 modules from PyTorch and TensorFlow, comparing PynguinML against Pynguin. The results show that PynguinML significantly improves test effectiveness, achieving up to 63.9 % higher code coverage.
title Constraint-Guided Unit Test Generation for Machine Learning Libraries
topic Software Engineering
url https://arxiv.org/abs/2510.09108