Для студентов ГУУ по предмету ДругиеНепрерывный режим инструмента покрытия кода в LLVM и GCCНепрерывный режим инструмента покрытия кода в LLVM и GCC
2024-07-172024-07-17СтудИзба
Курсовая работа: Непрерывный режим инструмента покрытия кода в LLVM и GCC
Описание
Оглавление
2
Введение
Тестирование программного продукта является одним из важней-ших компонентов разработки качественного программного обеспече-ния. Каждый программист должен самостоятельно уметь писать раз-личные виды тестов для проверки качества кода, также существуют специалисты по тестированию кода, проверяющие все нюансы и край-ние случаи. Код, покрытый тестами, позволяет программисту контро-лировать и делать более безопасным процесс реализации и внедрения в программный продукт новой функциональности, в случае чего быстро определяя и устраняя уязвимые области.
Для оценки уровня качества тестирования программного продукта необходимо выделить критерии, которые однозначно бы давали ответ на вопрос о качестве и полноте проведенной над тестами работы, такие критерии называются QA-метриками. Метрики позволяют однозначно определить и описать множество важных для программного продукта характеристик, таких как качество продукта, соответствие его заявлен-ным пользователем требованиям, стабильность использования, опреде-ление уязвимых областей кода.
Одной из таких метрик явл
Введение | 3 | |||
1. | Постановка задачи | 5 | ||
2. | Обзор | 6 | ||
2.1. | UTBot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 6 | ||
2.2. | Инструменты.......................... | 6 | ||
2.2.1. llvm-cov . . . . . . . . . . . . . . . . . . . . . . . . . | 6 | |||
2.2.2. Gcov . . . . . . . . . . . . . . . . . . . . . . . . . . . | 7 | |||
2.2.3. kcov, bcov . . . . . . . . . . . . . . . . . . . . . . . . | 8 | |||
3. | Ход работы | 9 | ||
3.1. | Сравнение инструментов для решения задачи и получе- | |||
нияпокрытия ......................... | 9 | |||
3.1.1. | Использование инструментов компилятора . . . . | 9 | ||
3.1.2. | Использование внешних инструментов . . . . . . . | 10 | ||
3.2. | План реализации решения задачи в UTBot . . . . . . . . | 11 | ||
3.3. | Реализация........................... | 12 | ||
3.3.1. | Зависимости и docker образ . . . . . . . . . . . . . | 12 | ||
3.3.2. | Генерацияотчета ................... | 12 | ||
3.3.3. Получение информации о покрытии из сгенериро- | ||||
ванногоотчета..................... | 12 | |||
Заключение | 14 | |||
Список литературы | 15 |
2
Введение
Тестирование программного продукта является одним из важней-ших компонентов разработки качественного программного обеспече-ния. Каждый программист должен самостоятельно уметь писать раз-личные виды тестов для проверки качества кода, также существуют специалисты по тестированию кода, проверяющие все нюансы и край-ние случаи. Код, покрытый тестами, позволяет программисту контро-лировать и делать более безопасным процесс реализации и внедрения в программный продукт новой функциональности, в случае чего быстро определяя и устраняя уязвимые области.
Для оценки уровня качества тестирования программного продукта необходимо выделить критерии, которые однозначно бы давали ответ на вопрос о качестве и полноте проведенной над тестами работы, такие критерии называются QA-метриками. Метрики позволяют однозначно определить и описать множество важных для программного продукта характеристик, таких как качество продукта, соответствие его заявлен-ным пользователем требованиям, стабильность использования, опреде-ление уязвимых областей кода.
Одной из таких метрик явл
Характеристики курсовой работы
Список файлов
Непрерывный режим инструмента покрытия кода в LLVM и GCC.doc