title: ÐÐ½ÐµÐ´ÑÐµÐ½Ð¸Ðµ Ð²ÑÐ±Ð¾ÑÐ¾ÑÐ½Ð¾Ð³Ð¾ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð² Ð¿ÑÐ¾ÑÐµÑÑ Ð½ÐµÐ¿ÑÐµÑÑÐ²Ð½Ð¾Ð¹ Ð¸Ð½ÑÐµÐ³ÑÐ°ÑÐ¸Ð¸ Ð´Ð»Ñ Ð¾Ð¿ÑÐ¸Ð¼Ð¸Ð·Ð°ÑÐ¸Ð¸ Ð¿ÑÐ¾ÑÐµÑÑÐ° ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ¸
title: Ð²ÑÐ¿ÑÑÐºÐ½Ð°Ñ ÐºÐ²Ð°Ð»Ð¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑÐ°Ð±Ð¾ÑÐ° Ð¼Ð°Ð³Ð¸ÑÑÑÐ°
titleType: Subtitle
title: Implementing selective testing in continuous integration process to optimize the development process
Creators: name: Ð¡Ð¾ÐºÐ¾Ð»Ð¾Ð²Ð°, ÐÐ»ÑÐ³Ð°
Publisher: name: Ð¡Ð°Ð½ÐºÑ-ÐÐµÑÐµÑÐ±ÑÑÐ³ÑÐºÐ¸Ð¹ Ð¿Ð¾Ð»Ð¸ÑÐµÑÐ½Ð¸ÑÐµÑÐºÐ¸Ð¹ ÑÐ½Ð¸Ð²ÐµÑÑÐ¸ÑÐµÑ ÐÐµÑÑÐ° ÐÐµÐ»Ð¸ÐºÐ¾Ð³Ð¾
Year: 2022
Subjects: ÐÑÑÐ¸ÑÐ»Ð¸ÑÐµÐ»ÑÐ½ÑÐµ Ð¼Ð°ÑÐ¸Ð½Ñ ÑÐ»ÐµÐºÑÑÐ¾Ð½Ð½ÑÐµ
Ð½ÐµÐ¿ÑÐµÑÑÐ²Ð½Ð°Ñ Ð¸Ð½ÑÐµÐ³ÑÐ°ÑÐ¸Ñ
continuous integration

description: ÐÐµÐ¾ÑÑÐµÐ¼Ð»ÐµÐ¼Ð¾Ð¹ ÑÐ°ÑÑÑÑ Ð¶Ð¸Ð·Ð½ÐµÐ½Ð½Ð¾Ð³Ð¾ ÑÐ¸ÐºÐ»Ð° Ð¿ÑÐ¾ÐµÐºÑÐ° ÑÐ²Ð»ÑÐµÑÑÑ ÑÐµÐ³ÑÐµÑÑÐ¸Ð¾Ð½Ð½Ð¾Ðµ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ðµ, Ð¿ÑÐ¾Ð²ÐµÑÑÑÑÐµÐµ ÑÐ°Ð±Ð¾ÑÐ¾ÑÐ¿Ð¾ÑÐ¾Ð±Ð½Ð¾ÑÑÑ ÑÑÑÐµÑÑÐ²ÑÑÑÐµÐ¹ ÑÑÐ½ÐºÑÐ¸Ð¾Ð½Ð°Ð»ÑÐ½Ð¾ÑÑÐ¸ Ð¿Ð¾ÑÐ»Ðµ Ð²Ð½ÐµÑÐµÐ½Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹. ÐÑÐ¾Ð±Ð»ÐµÐ¼Ð° Ð´Ð»Ð¸ÑÐµÐ»ÑÐ½Ð¾ÑÑÐ¸ ÑÐµÐ³ÑÐµÑÑÐ¸Ð¾Ð½Ð½Ð¾Ð³Ð¾ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÑÐ²Ð»ÑÐµÑÑÑ Ð°ÐºÑÑÐ°Ð»ÑÐ½Ð¾Ð¹, Ð¿Ð¾ÑÐºÐ¾Ð»ÑÐºÑ Ñ ÑÐ°Ð·Ð²Ð¸ÑÐ¸ÐµÐ¼ Ð¿ÑÐ¾ÐµÐºÑÐ° ÑÐ²ÐµÐ»Ð¸ÑÐ¸Ð²Ð°ÐµÑÑÑ ÐºÐ¾Ð»Ð¸ÑÐµÑÑÐ²Ð¾ ÑÐµÑÑÐ¾Ð², Ð²ÑÐ¾Ð´ÑÑÐ¸Ñ Ð² ÑÐµÐ³ÑÐµÑÑÐ¸Ð¾Ð½Ð½ÑÐ¹ Ð½Ð°Ð±Ð¾Ñ Ð¸ Ð²ÑÐµÐ¼Ñ ÐµÐ³Ð¾ Ð²ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ. ÐÐ°Ð½Ð½Ð°Ñ Ð²ÑÐ¿ÑÑÐºÐ½Ð°Ñ ÐºÐ²Ð°Ð»Ð¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑÐ°Ð±Ð¾ÑÐ° Ð¼Ð°Ð³Ð¸ÑÑÑÐ° Ð¿Ð¾ÑÐ²ÑÑÐµÐ½Ð° Ð¸ÑÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑÐ¸Ð¼ÐµÐ½Ð¸Ð¼Ð¾ÑÑÐ¸ Ð¼ÐµÑÐ¾Ð´Ð° Ð²ÑÐ±Ð¾ÑÐ¾ÑÐ½Ð¾Ð³Ð¾ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð² Ð¿ÑÐ¾ÑÐµÑÑÐµ Ð½ÐµÐ¿ÑÐµÑÑÐ²Ð½Ð¾Ð¹ Ð¸Ð½ÑÐµÐ³ÑÐ°ÑÐ¸Ð¸ Ð´Ð»Ñ ÑÑÐºÐ¾ÑÐµÐ½Ð¸Ñ Ð²ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÑÐµÐ³ÑÐµÑÑÐ¸Ð¾Ð½Ð½Ð¾Ð³Ð¾ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ. Ð¦ÐµÐ»ÑÑ ÑÐ°Ð±Ð¾ÑÑ ÑÐ²Ð»ÑÐµÑÑÑ Ð²Ð½ÐµÐ´ÑÐµÐ½Ð¸Ðµ ÑÑÐ°Ð¿Ð° Ð²ÑÐ±Ð¾ÑÐ¾ÑÐ½Ð¾Ð³Ð¾ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð² ÑÐ¸ÐºÐ» Ð½ÐµÐ¿ÑÐµÑÑÐ²Ð½Ð¾Ð¹ Ð¸Ð½ÑÐµÐ³ÑÐ°ÑÐ¸Ð¸. Ð ÑÐ°Ð±Ð¾ÑÐµ Ð¿ÑÐ¾Ð²ÐµÐ´ÑÐ½ Ð¾Ð±Ð·Ð¾Ñ Ð¿Ð¾ÑÐ»ÐµÐ´Ð½Ð¸Ñ Ð¸ÑÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ð¹ Ð² Ð¾Ð±Ð»Ð°ÑÑÐ¸ Ð²ÑÐ±Ð¾ÑÐ¾ÑÐ½Ð¾Ð³Ð¾ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ, ÐºÐ»Ð°ÑÑÐ¸ÑÐ¸ÑÐ¸ÑÐ¾Ð²Ð°Ð½Ñ Ð¼ÐµÑÐ¾Ð´Ñ Ð²ÑÐ±Ð¾ÑÐ¾ÑÐ½Ð¾Ð³Ð¾ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ, Ð¾Ð¿Ð¸ÑÐ°Ð½Ñ ÑÑÑÐµÑÑÐ²ÑÑÑÐ¸Ðµ ÑÐµÑÐµÐ½Ð¸Ñ. ÐÑÐ» Ð¿ÑÐµÐ´Ð»Ð¾Ð¶ÐµÐ½ Ð¿Ð¾Ð´ÑÐ¾Ð´, Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÑÑÐ¸Ð¹ Ð¿ÑÐ¸Ð¼ÐµÐ½Ð¸ÑÑ Ð²ÑÐ±Ð¾ÑÐ¾ÑÐ½Ð¾Ðµ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ðµ Ð² Ð¿ÑÐ¾ÑÐµÑÑÐµ Ð½ÐµÐ¿ÑÐµÑÑÐ²Ð½Ð¾Ð¹ Ð¸Ð½ÑÐµÐ³ÑÐ°ÑÐ¸Ð¸ Ð½ÐµÐ·Ð°Ð²Ð¸ÑÐ¸Ð¼Ð¾ Ð¾Ñ Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½ÑÐ° Ð·Ð°Ð¿ÑÑÐºÐ° ÑÐµÑÑÐ¾Ð². ÐÑÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð° Ð°ÑÑÐ¸ÑÐµÐºÑÑÑÐ° Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½ÑÐ° Ð²ÑÐ±Ð¾ÑÐ¾ÑÐ½Ð¾Ð³Ð¾ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ ÑÑÐµÐ½Ð°ÑÐ¸Ð¹ ÐµÐ³Ð¾ Ð¸ÑÐ¿Ð¾Ð»ÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ. Ð¡Ð¾Ð³Ð»Ð°ÑÐ½Ð¾ Ð¿ÑÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð½Ð¾Ð¹ Ð°ÑÑÐ¸ÑÐµÐºÑÑÑÐµ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐ°Ð½ Ð¸ Ð¿ÑÐ¾ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½ Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½Ñ Ð²ÑÐ±Ð¾ÑÐ¾ÑÐ½Ð¾Ð³Ð¾ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ. Ð ÑÐ°Ð±Ð¾ÑÐµ Ð¿ÑÐ¸Ð²ÐµÐ´ÐµÐ½Ñ ÑÐµÐ·ÑÐ»ÑÑÐ°ÑÑ Ð¸ÑÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ ÑÑÑÐµÐºÑÐ¸Ð²Ð½Ð¾ÑÑÐ¸ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐ°Ð½Ð½Ð¾Ð³Ð¾ Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½ÑÐ° Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ ÑÐµÑÐ½Ð¸ÐºÐ¸ Ð¼ÑÑÐ°ÑÐ¸Ð¾Ð½Ð½Ð¾Ð³Ð¾ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð½Ð° Java Ð¿ÑÐ¾ÐµÐºÑÐµ Ñ Ð¾ÑÐºÑÑÑÑÐ¼ Ð¸ÑÑÐ¾Ð´Ð½ÑÐ¼ ÐºÐ¾Ð´Ð¾Ð¼.
description: Regression testing is an integral part of the project lifecycle. It verifies that existing functionality works after changes have been made. The problem of the duration of regression testing is relevant, since with the development of the project, the number of tests included in the regression set and the time of its execution increase. This master's thesis is devoted to the study of the applicability of the selective testing method in the process of continuous integration to speed up the execution of regression testing. The aim of the work is to introduce the stage of selective testing into the cycle of continuous integration. The thesis reviews the latest research in the field of selective testing, classifies methods of selective testing, and describes existing solutions. An approach has been proposed that allows selective testing to be applied in the continuous integration process, regardless of the test runner tool. The architecture of the selective testing tool and the scenario of its use are proposed. According to the proposed architecture, a selective testing tool has been developed and tested. The thesis presents the results of a study of the effectiveness of the developed tool using the mutation testing technique in an open-source Java project.