Науковий вісник НЛТУ України (Aug 2022)
Декомпозиція вхідних даних у задачах генерування модульних тестів
Abstract
Для дослідження можливостей декомпозиції вхідних даних у задачах генерування модульних тестів застосовано методи ізолювання, структурне та функціональне моделювання. Проаналізовано наявні методи та виділено основні стратегії, які застосовуються системами символьного виконання. Описано їх переваги та недоліки. Запропоновано нові методи кластеризації вхідних даних для генерування модульних тестів. Визначено основні кроки для створення моделі кластеризації вхідних даних з використанням засобів символьного виконання. Обґрунтовано застосування коду як основного джерела даних для кластеризації. Охарактеризовано об'єкти, що містяться у вхідних даних або пов'язані з ними та є потенційними сутностями для кластеризації. Визначено функцію як множину операторів мови програмування, одиницею декомпозиції коду програми для генерування модульних тестів. Охарактеризовано її властивості за мірою придатності кількісних і якісних характеристик для створення функції подібності. Обґрунтовано вибір зв'язків з іншими функціями та звертань до даних за межами локальної області видимості функції як основних параметрів кластеризації. Визначено користувацькі типи даних, які використовуються для визначення параметрів і значення, що повертається, як можливі другорядні параметри кластеризації. Сформульовано задачу кластеризації на підставі обраних характеристик для вхідних даних, що використовуються для генерування тестів. Запропоновано методи обчислення міри близькості між окремими функціями, а також між функцією та кластером. Описано практичні методи для обчислення характеристик та сутностей з вхідних даних. Запропоновано подальші дослідження з метою визначення оптимальних значень коефіцієнтів для запропонованої моделі кластеризації та функції розпізнавання для перевірки близькості кластерів до відомих шаблонів, що створить додаткові можливості для генерування тестів.
Keywords