TestMiner: Software Testing Analysis for GitHub Repositories

📅 2026-07-13
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
This work addresses the significant heterogeneity in testing strategies and organization across open-source projects, which hinders rapid comprehension of their testing practices due to the lack of unified analytical tools. To bridge this gap, we propose TestMiner—a multilingual test practice analysis tool supporting languages such as Python, Java, Go, and Rust. By leveraging static code analysis and metadata extraction, TestMiner generates multidimensional visualizations encompassing test statistics, distribution, evolution, and dependency relationships. As the first tool to systematically enable cross-language and cross-ecosystem exploration of testing practices, TestMiner has been integrated into a software testing course, where it demonstrated marked effectiveness among 50 undergraduate students by significantly enhancing their understanding and critical analysis of core testing concepts, including test organization, evolution, mocking, and boundary testing.
📝 Abstract
Software systems have unique testing characteristics. Some projects can emphasize unit tests, while others may focus on end-to-end testing. Test organization may vary across ecosystems: in languages like Python and Java, tests are typically placed in dedicated folders, whereas Go and Rust projects commonly co-locate tests with source code. These distinctions make it harder to understand how a project approaches testing. In this paper, we present TestMiner, a tool for exploring software testing in GitHub repositories. TestMiner provides an overview of a project's testing practices, including test statistics, test location, test metrics across releases, and dependencies related to testing. We used TestMiner in an undergraduate Software Testing course, where 50 students explored the testing practices of real-world GitHub repositories. Overall, students expressed positive feedback regarding TestMiner. They were able to critically explore a variety of testing practices, including test organization, test evolution, test fixtures, mocking, and edge-case testing. TestMiner is available at: https://andrehora.github.io/testminer. Screencast: https://youtu.be/w1sBgLTq-7Y.
Problem

Research questions and friction points this paper is trying to address.

software testing
test organization
GitHub repositories
testing practices
test analysis
Innovation

Methods, ideas, or system contributions that make the work stand out.

TestMiner
software testing analysis
test organization
GitHub repositories
testing practices
🔎 Similar Papers
No similar papers found.