Control Systems and Computers, N3, 2024, Стаття 3
https://doi.org/10.15407/csc.2024.03.033
Колчин О.В., Потієнко С.В. Автоматизований метод перевірки та налагодження тестових сценаріїв на основі формальної моделі. Сontrol Systems and Computers. 2024. № 3. C. 33-44.
УДК 004.05+004.942+004.416.2+004.415.532.3
О.В. КОЛЧИН, кандидат фіз.-мат. наук, с.н.c., Інститут кібернетики ім. В.М. Глушкова НАН України, просп. Академіка Глушкова, 40, м. Київ, Україна, 03187, ORCID: https://0000-0001-7809-536X, kolchin_av@yahoo.com
С.В. ПОТІЄНКО, кандидат фіз.-мат. наук, с.н.с., Інститут кібернетики ім. В.М. Глушкова ім. В.М. Глушкова НАН України, просп. Академіка Глушкова, 40, м. Київ, Україна, 03187, ORCID: https://0000-0001-9462-599X, stepan.potiyenko@gmail.com
АВТОМАТИЗОВАНИЙ МЕТОД ПЕРЕВІРКИ ТА НАЛАГОДЖЕННЯ ТЕСТОВИХ СЦЕНАРІЇВ НА ОСНОВІ ФОРМАЛЬНОЇ МОДЕЛІ
Автоматичне створення тестів на основі моделі є популярною стратегією тестування. Однак багато звітів показують недоліки таких тестів, пов’язані з низькою якістю та сумнівною ефективністю. Щоб усунути ці проблеми та підвищити довіру до згенерованих тестових сценаріїв, ми пропонуємо інтерактивний метод їхнього аналізу та редагування, заснований на візуалізації шляху сценарію вздовж графа потоку керування моделі з додатковою інформацією про фактичну історію обчислень усіх змінних та можливі альтернативні варіанти поведінки. Метод сприяє безпечному внесенню змін до тестових сценаріїв, дозволяючи усувати виявлені недоліки та залишаючи цілі покриття неушкодженими. Для консистентної підстановки у параметри сигналів певних значень, які б визначали артефакти тестового середовища (такі як, наприклад, файли, бази даних тощо) та перевіряли граничні випадки (в предикатах умов, індексації масивів тощо), розроблено метод інтерактивної конкретизації символьних трас. Запропонований інструментарій суттєво зменшує час на дослідження результатів тестової генерації та редагування отриманих тестів, а його застосування позитивно впливає на якість та ефективність тестового набору.
Завантажити повний текст! (українською)
Ключові слова: модельне тестування, генерація тестів, налагодження, валідація тестів.
- Kolchin, A., Potiyenko, S., Weigert, T. (2019). “Challenges for automated, model-based test scenario generation”. In Comm. in Computer and Inf. Sci., vol. 1078, pp. 182–194.
- Kolchin, A., Potiyenko, S. (2022). “Extending Data Flow Coverage to Test Constraint Refinements”. In: ter Beek, M.H., Monahan, R. (eds) Integrated Formal Methods. Lecture Notes in Computer Science, vol. https://doi.org/10.1007/978-3-031-07727-2_17.
- Rushby, (2008). “Automated test generation and verified software”. Verified Software: Theories, Tools, Experiments, pp. 161–172. https://doi.org/10.1007/978-3-540-69149-5_18.
- Dssouli, R. et. al. (2017). “Testing the control-flow, data-flow, and time aspects of communication systems: a survey”. Advances in Computers. vol. 107, pp. 95–155.
- Inozemtseva, L., Holmes, R. (2014). “Coverage is not strongly correlated with test suite effectiveness”. In Proc. of ACM ICSE’14, 435–445.
- Gay, G., Staats, M., Whalen, M., Heimdahl, M. (2015). “The risks of coverage-directed test case generation”. IEEE Transactions on Software Engineering. vol.41, pp. 803–819.
- Staats, M. et. al. (2012). “On the danger of coverage directed test case generation”. Lecture Notes in Computer Science, 7212, pp. 409–424. https://doi.org/10.1007/978-3-642-28872-2_28.
- Palomba, F., et. al. (2016). “Automatic Test Case Generation: What if Test Code Quality Matters?” In proc. of Int. Symp. on Software Testing and Analysis, pp. 130–141.
- Ying, M., Gay, G., Whalen, M. (2018). “Ensuring the observability of structural test obligations”. IEEE Transactions on Software Engineering, 46 (7),748–772.
- Perez, F., Font, J., Arcega, L., & Cetina, C. (2022). “Empowering the Human as the Fitness Function in Search-Based Model-Driven Engineering”. IEEE Transactions on Software Engineering, 48 (11), pp. 4553–4568.
- Ceccato, M., et.al. (2015). “Do automatically generated test cases make debugging easier? An experimental assessment of debugging effectiveness and efficiency”. ACM Transactions on Software Engineering and Methodology, 25(1), pp. 1–38.
- Lucredio, D., Vincenzi, A., Almeida, E., Ahmed, I. (2023). “Test case quality: an empirical study on belief and evidence”. arXiv:2307.06410.
- Winkler, D., Urbanke, P., Ramler, R. (2022). “What Do We Know About Readability of Test Code? – A Systematic Mapping Study”. In 2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER), Honolulu, HI, USA, pp. 1167–1174.
- Rastello, F., Tichadou, F. (2022). SSA-based Compiler Design. Springer Nature, 382 p.
- Kolchin, A.V. (2010). “An automatic method for the dynamic construction of abstractions of states of a formal model”. Cybernetics and Systems Analysis, 46 (4), pp. 583–601. https://doi.org/10.1007/s10559-010-9235-9.
- Kolchin, A. (2018). “Interactive method for cumulative analysis of software formal models behavior”. of the 11th Int. Conf. on Programming UkrPROG’2018, CEUR-WS vol. 2139, pp. 115–123.
- Kolchin, A. et. al. (2013). “An approach to creating concretized test scenarios within test automation technology for industrial software projects”. Automatic control and computer science, pp. 433–442. https://doi.org/10.3103/S0146411613070213.
- Годлевский А.Б., Потиенко С.В. Обратная трансформация формул в символьном моделировании: от результата к исходной формуле. Проблеми програмування. 2010. № 2–3. С. 363–368.
- Потиенко С.В. Методы прямого и обратного символьного моделирования систем, заданных базовыми протоколами. Проблеми програмування. 2008. № 4. С. 39–45.
- Vu, F., Leuschel, M. (2023). “Validation of Formal Models by Interactive Simulation”. In: Glässer, U., Creissac Campos, J., Méry, D., Palanque, P. (eds) Rigorous State-Based Methods. ABZ 2023. Lecture Notes in Computer Science, vol 14010. Springer, Cham. https://doi.org/10.1007/978-3-031-33163-3_5.
Надійшла 14.04.2024