TestSpark: IntelliJ IDEA's Ultimate Test Generation Companion

Conference Paper (2024)
Author(s)

Arkadii Sapozhnikov (JetBrains)

Mitchell Olsthoorn (TU Delft - Software Engineering)

Annibale Panichella (TU Delft - Software Engineering)

V.V. Kovalenko (JetBrains)

P. Derakhshanfar (JetBrains)

Research Group
Software Engineering
DOI related publication
https://doi.org/10.1145/3639478.3640024
More Info
expand_more
Publication Year
2024
Language
English
Research Group
Software Engineering
Pages (from-to)
30-34
ISBN (electronic)
9798400705021
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Writing software tests is laborious and time-consuming. To address this, prior studies introduced various automated test-generation techniques. A well-explored research direction in this field is unit test generation, wherein artificial intelligence (AI) techniques create tests for a method/class under test. While many of these techniques have primarily found applications in a research context, existing tools (e.g., EvoSuite, Randoop, and AthenaTest) are not user-friendly and are tailored to a single technique. This paper introduces TestSpark, a plugin for IntelliJ IDEA that enables users to generate unit tests with only a few clicks directly within their Integrated Development Environment (IDE). Furthermore, TestSpark also allows users to easily modify and run each generated test and integrate them into the project workflow. TestSpark leverages the advances of search-based test generation tools, and it introduces a technique to generate unit tests using Large Language Models (LLMs) by creating a feedback cycle between the IDE and the LLM. Since TestSpark is an open-source (https://github.com/JetBrains-Research/TestSpark), extendable, and well-documented tool, it is possible to add new test generation methods into the plugin with the minimum effort. This paper also explains our future studies related to TestSpark and our preliminary results. Demo video: https://youtu.be/0F4PrxWfiXo

Files

3639478.3640024.pdf
(pdf | 1.11 Mb)
- Embargo expired in 25-11-2024
License info not available