Детальная информация

Название Автоматизация разработки тестовых наборов на базе средств статического анализа кода: выпускная квалификационная работа бакалавра: направление 02.03.02 «Фундаментальная информатика и информационные технологии» ; образовательная программа 02.03.02_02 «Информатика и компьютерные науки» = Automating the development of test suites based on static code analysis tools
Авторы Сиобко Борис Анатольевич
Научный руководитель Самочадина Татьяна Николаевна
Организация Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Выходные сведения Санкт-Петербург, 2026
Коллекция Выпускные квалификационные работы ; Общая коллекция
Тематика статический анализ кода ; Swift ; SwiftLint ; SwiftSyntax ; XCUITest ; GitLab Code Quality ; CI/CD ; автоматизированное тестирование ; код-ревью ; static code analyses ; automated testing ; code review
Тип документа Выпускная квалификационная работа бакалавра
Язык Русский
Уровень высшего образования Бакалавриат
Код специальности ФГОС 02.03.02
Группа специальностей ФГОС 020000 - Компьютерные и информационные науки
DOI 10.18720/SPBPU/3/2026/vr/vr26-2594
Права доступа Доступ по паролю из сети Интернет (чтение)
Дополнительно Новинка
Ключ записи ru\spstu\vkr\42765
Дата создания записи 21.08.2026

Разрешенные действия

Действие 'Прочитать' будет возможно после подготовки администраторами необходимых файлов

Группа Анонимные пользователи
Сеть Интернет

Данная работа посвящена автоматизации контроля качества кода автома-тизированных UI-тестов для мобильного приложения на платформе iOS. Це-лью работы является снижение трудоёмкости проверки кода iOS-тестов за счёт разработки и внедрения средства статического анализа, объединяющего возможности SwiftLint, проектно-специфичные проверки на основе SwiftSyntax и формирование отчёта в формате GitLab Code Quality. В ходе работы были проанализированы существующие инструменты статического анализа, применимые к Swift/iOS-проектам: SwiftLint, swift-format, Semgrep, CodeQL и Periphery. На основании сравнения в качестве ба-зового инструмента был выбран SwiftLint. Для реализации проверок, требу-ющих анализа структуры Swift-кода, была использована библиотека SwiftSyntax. В результате было разработано средство статического анализа, выпол-няющее стандартные и пользовательские правила SwiftLint, а также дополни-тельные проектно-специфичные проверки. Инструмент позволяет выявлять нарушения структуры тестовых классов, использование нежелательных кон-струкций и ошибки, связанные с заданием идентификаторов пользовательского интерфейса. Результаты анализа публикуются в CI/CD в формате GitLab Code Quality. По результатам применения решения 95% сотрудников отметили поло-жительный эффект от внедрения линтера. Разработанный инструмент позво-лил перенести часть формальных замечаний из ручного ревью в автоматизи-рованную проверку и снизить нагрузку на дежурных по автоматизации тести-рования. В работе использованы Swift, XCTest, XCUITest, SwiftLint, SwiftSyntax, ArgumentParser, PathKit, Yams, CryptoKit, JSON, Git, GitLab, GitLab CI, TeamCity и Xcode.

The work is devoted to automating quality control of automated UI test code for a mobile application on the iOS platform. The purpose of the work is to reduce the labor intensity of iOS test code review by developing and integrating a static analysis tool that combines SwiftLint capabilities, project-specific checks based on SwiftSyntax, and report generation in the GitLab Code Quality format. During the work, existing static analysis tools applicable to Swift/iOS pro-jects were reviewed: SwiftLint, swift-format, Semgrep, CodeQL, and Periphery. Based on the comparison, SwiftLint was selected as the basic tool. SwiftSyntax was used to implement checks that require analysis of the Swift code structure. As a result, a static analysis tool was developed. It performs standard and custom SwiftLint rules, as well as additional project-specific checks. The tool de-tects violations of test class structure, undesirable constructions, and issues related to user interface identifiers. The analysis results are published in CI/CD in the GitLab Code Quality format. According to the results of applying the solution, 95% of employees noted a positive effect from the introduction of the linter. The developed tool made it pos-sible to transfer part of the formal review comments from manual review to au-tomated verification and reduce the workload of test automation duty engineers. The work uses Swift, XCTest, XCUITest, SwiftLint, SwiftSyntax, Argu-mentParser, PathKit, Yams, CryptoKit, JSON, Git, GitLab, GitLab CI, TeamCity, and Xcode.

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все
Интернет Авторизованные пользователи СПбПУ
Интернет Анонимные пользователи
...