Development of a tool for auto-generation of unit tests using genetic algorithms in the Java language

Jazyk: ruština
Rok vydání: 2022
Předmět:
DOI: 10.18720/spbpu/3/2022/vr/vr22-3923
Popis: Тема выпускной квалификационной работы: «Разработка инструмента для автогенерации Ð¼Ð¾Ð´ÑƒÐ»ÑŒÐ½Ñ‹Ñ Ñ‚ÐµÑÑ‚Ð¾Ð² с использованием Ð³ÐµÐ½ÐµÑ‚Ð¸Ñ‡ÐµÑÐºÐ¸Ñ Ð°Ð»Ð³Ð¾Ñ€Ð¸Ñ‚Ð¼Ð¾Ð² на языке Java». Данная работа посвящена изучению ÑÑƒÑ‰ÐµÑÑ‚Ð²ÑƒÑŽÑ‰Ð¸Ñ Ð¼ÐµÑ‚Ð¾Ð´Ð¾Ð² тестирования программного обеспечения с помощью искусственного интеллекта и разработке инструмента для автогенерации Ð¼Ð¾Ð´ÑƒÐ»ÑŒÐ½Ñ‹Ñ Ñ‚ÐµÑÑ‚Ð¾Ð² с использованием Ð³ÐµÐ½ÐµÑ‚Ð¸Ñ‡ÐµÑÐºÐ¸Ñ Ð°Ð»Ð³Ð¾Ñ€Ð¸Ñ‚Ð¼Ð¾Ð² на языке Java. Задачи, которые решались в Ñ Ð¾Ð´Ðµ исследования: Обзор ÑÑƒÑ‰ÐµÑÑ‚Ð²ÑƒÑŽÑ‰Ð¸Ñ Ð¿Ð¾Ð´Ñ Ð¾Ð´Ð¾Ð² в тестировании программного обеспечения. Исследование Ð°ÐºÑ‚ÑƒÐ°Ð»ÑŒÐ½Ñ‹Ñ Ð¼ÐµÑ‚Ð¾Ð´Ð¾Ð² тестирования программного обеспечения с использованием искусственного интеллекта. Разработка ÑÑ ÐµÐ¼Ñ‹ инструмента автогенерации Ð¼Ð¾Ð´ÑƒÐ»ÑŒÐ½Ñ‹Ñ Ñ‚ÐµÑÑ‚Ð¾Ð². Разработка и реализация генетического алгоритма автогенерации Ð¼Ð¾Ð´ÑƒÐ»ÑŒÐ½Ñ‹Ñ Ñ‚ÐµÑÑ‚Ð¾Ð². Определение качества разработанной программы. Разработка общей методики тестирования программ. Тестирование с использованием разработанной методики. В результате проделанной работы получен набор методов автоматического модульного тестирования, Ð°ÐºÑ‚ÑƒÐ°Ð»ÑŒÐ½Ñ‹Ñ Ð´Ð»Ñ решения проблем тестирования Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð½Ñ‹Ñ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ‚Ð¾Ð² без участия человека. Разработан инструмент для автоматической генерации Ð¼Ð¾Ð´ÑƒÐ»ÑŒÐ½Ñ‹Ñ Ñ‚ÐµÑÑ‚Ð¾Ð². Для определения качества и скорости разработанной программы вычислена функция приспособленности, а также проведено тестирование по разработанной методике.
The Theme of the final graduation research: «Development of a tool for auto-generation of unit tests using genetic algorithms in Java». This work is devoted to the study of existing software testing methods using artificial intelligence and the development of a tool for auto-generation of unit tests using genetic algorithms in Java. Tasks that were solved during the study: 1. Overview of existing approaches in software testing. 2. Research of actual methods of software testing using artificial intelligence. 3. Development of a scheme for the auto-generation of unit tests. 4. Development and implementation of a genetic algorithm for autogeneration of unit tests. 5. Determination of the quality of the developed program. 6. Development of a general methodology for testing programs. 7. Testing using the developed methodology. As a result of the work done, a set of automatic unit testing methods has been obtained that are relevant for solving the problems of testing software components without human intervention. A tool for automatic generation of unit tests has been developed. To determine the quality and speed of the developed program, the fitness function was calculated, and testing was carried out according to the developed methodology.
Databáze: OpenAIRE