Details
| Title | Разработка экспериментального стенда для генерации модульных тестов на Java с использованием LLM: выпускная квалификационная работа бакалавра: направление 09.03.03 «Прикладная информатика» ; образовательная программа 09.03.03_03 «Интеллектуальные инфокоммуникационные технологии» = Development of an experimental bench for generating unit tests in Java using LLM |
|---|---|
| Creators | Кондрюков Дмитрий Сергеевич |
| Scientific adviser | Пархоменко Владимир Андреевич |
| Organization | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
| Imprint | Санкт-Петербург, 2026 |
| Collection | Выпускные квалификационные работы ; Общая коллекция |
| Subjects | LLM ; RAG ; генерация модульных тестов ; Java ; unit test generation |
| Document type | Bachelor graduation qualification work |
| Language | Russian |
| Level of education | Bachelor |
| Speciality code (FGOS) | 09.03.03 |
| Speciality group (FGOS) | 090000 - Информатика и вычислительная техника |
| DOI | 10.18720/SPBPU/3/2026/vr/vr26-2129 |
| Rights | Доступ по паролю из сети Интернет (чтение, печать, копирование) |
| Additionally | New arrival |
| Record key | ru\spstu\vkr\42891 |
| Record create date | 8/21/2026 |
Allowed Actions
–
Action 'Read' will be available if administrator prepare required files
Action 'Download' will be available if you login or access site from another network
| Group | Anonymous |
|---|---|
| Network | Internet |
Данная работа посвящена разработке экспериментального стенда для генерации модульных тестов на языке Java с использованием LLM и технологии RAG. В ходе ознакомления с областью работы проведен обзор методов автоматизации тестирования программного обеспечения и подходов к повышению качества автоматически генерируемых тестов за счёт использования контекстной информации о проекте. Объект исследования – процесс модульного тестирования программного обеспечения. Цель работы – разработать экспериментальный стенд для автоматической генерации модульных тестов на языке Java с использованием LLM и RAG. Методическую основу исследования составили анализ научной литературы, проектирование стенда и экспериментальное исследования для проверки итогов работы. Разработана архитектура экспериментального стенда, включающая механизмы формирования базы знаний проекта, извлечения контекста и генерации тестов на основе LLM и RAG. Для хранения данных использовались реляционная и векторная базы данных PostgreSQL и Milvus. В качестве технологий применялись Java-фреймворк Spring Boot, локальная инфраструктура LLM на базе Ollama и среда разработки IntelliJ IDEA. Результатом работы является программный прототип экспериментального стенда с функционалом подключения проектов, проведения экспериментов с различными LLM, генерации модульных тестов и сбора метрик качества. На его основе проведены эксперименты с наборами данных Defects4J и ProjectTest, выполнено сравнение моделей по показателям компиляции, успешности выполнения тестов и тестового покрытия. Полученные результаты подтверждают перспективность использования RAG для повышения качества автоматически генерируемых модульных тестов. Результаты работы могут применяться при исследовании методов автоматизации тестирования программного обеспечения, сравнительном анализе LLM в задачах генерации тестов, а также при разработке инструментов поддержки процессов тестирования и обеспечения качества программного обеспечения.
This work is devoted to the development of an experimental testbed for generating unit tests in Java using LLM and RAG technology. In the course of familiarization with the field of work, an overview of software testing automation methods and approaches to improving the quality of automatically generated tests through the use of contextual information about the project was conducted. Research object is a software unit testing process. The purpose of the work is to develop an experimental bench for the automatic generation of unit tests in Java using LLM and RAG. The methodological basis of the research was the analysis of scientific literature, design of software systems and experimental research to verify the results of the work. The architecture of the stand has been developed, which includes mechanisms for forming the project’s knowledge base, extracting context, and generating tests based on LLM and RAG. Relational and vector databases PostgreSQL and Milvus were used for data storage. The technologies used were the Java framework Spring Boot, the local LLM infrastructure based on Ollama, and the IntelliJ IDEA development environment. The result of the work is a software prototype of an experimental stand that enables the connection of projects, experiments with various LLMs, the generation of unit tests and the collection of quality metrics. Based on it, experiments were conducted with the Defects4J and ProjectTest datasets, and models were compared in terms of compilation, test success, and test coverage. The results obtained confirm the prospects of using RAG to improve the quality of automatically generated unit tests. The results of the work can be used in the study of software testing automation methods, comparative analysis of LLM in test generation tasks, as well as in the development of tools to support testing processes and ensure software quality.
| Network | User group | Action |
|---|---|---|
| ILC SPbPU Local Network | All |
|
| Internet | Authorized users SPbPU |
|
| Internet | Anonymous |
|