Тесленко, Олександр КириловичСенеджук, Андрій Юрійович2023-01-042023-01-042022Сенеджук, А. Ю. Засоби автоматизації тестування вебдодатку з використанням pytest : магістерська дис. : 123 Комп'ютерна інженерія / Сенеджук Андрій Юрійович. – Київ, 2022. – 82 с.https://ela.kpi.ua/handle/123456789/51678Актуальність теми. Тестування програмного забезпечення – це перевірка відповідності поміж очікуваною та реальною поведінкою системи/програми, здійснюється на кінцевому наборі тестів, які в свою чергу вибираються певним шляхом. У більш широкому сенсі, тестування – це одна з технік контролю якості, яка включає активності по плануванню робіт, проєктуванню тестових випадків, виконанню самого тестування та аналізу отриманих результатів. Розробка додатків не може не супроводжуватись помилками/дефектами. Та і взагалі, при внесенні якихось змін у складні програмні продукти – дуже важко зрозуміти, як це відобразиться на інших частинах архітектури. Веб-застосунки належать до складних програмних продуктів, тому що логіка застосунку розподілена між сервером та клієнтом. У свою чергу, за компаніями тягнуться величезні збитки через відсутність якості програмного забезпечення. Для того, аби пришвидшити пошук та виявлення у системі дефектів та надати саме якісний кінцевий програмний продукт – й існує тестування. Об’єктом дослідження є функціональне та автоматизоване тестування програмного продукту. Предметом дослідження є вебдодаток. Мета роботи: (якісний продукт) з урахуванням актуальності дослідженню і виявлених проблем, метою магістерської роботи є створення наборів тестових випадків та розробка автоматизованих тестових сценаріїв тестування веб-додатків. Дані дії покликані на досягнення загальної цілі – забезпеченню якості програмного продукту та виявленню прихованих дефектів. Поставлена мета визначатиме наступні наукові та практичні задачі, які й будуть вирішуватись в процесі дослідження: 1) визначити сутність веб-застосунків; 2) дослідити техніки та методології тестування веб-застосунків; 3) визначити сутність функціонального тестування та створити тестові випадки для веб-застосунків; 4) створити автоматизовані сценарії тестування веб-застосунків. Наукова новизна одержаних результатів роботи полягає у наступному. - Запропоновано спосіб забезпечення якісного програмного продукту; - Розроблено систему автоматизованих тестових сценаріїв, покликаних на пошук програмних дефектів у програмному коді. Практична цінність отриманих в роботі результатів полягає в тому, що розроблена система автоматизованих тестових сценаріїв дозволяє отримати на виході справді якісний програмний продукт, яким зможуть користуватись клієнти з усього світу та використовувати увесь необхідний функціонал програмного забезпечення без дефектів та з користю. Розроблені автоматизовані тестові сценарії, інтегровані у CI/CD процеси на 20% збільшують шанси дійти до успішного спринту в рамках SCRUM команди та на 50% економить час роботи QA команди, особливо під час регресивного тестування. Апробація роботи. Основні положення і результати роботи були представлені та обговорювались на: - XIV-тій науковій конференції магістрантів та аспірантів «Прикладна математика та комп’ютинг» ПМК-2022 (Київ, 17- 19 листопада 2022 р.). - XIV-тій міжнародній науково-технічній Internet-конференції «Сучасні методи, інформаційне, програмне та технічне забезпечення систем керування організаційно-технічними та технологічними комплексами» НУХТ-2022 (Київ, 5 листопада 2022 р.). Публікації. За тематикою проведених досліджень опубліковано 2 наукові праці, а саме тези доповідей на 2-х конференціях. Структура та обсяг роботи. Магістерська дисертація складається з вступу, трьох розділів та висновків. У вступі подано загальну характеристику роботи, зроблено оцінку сучасного стану проблеми, обґрунтовано актуальність напрямку досліджень. У першому розділі розглянуто основні поняття веб-додатків, методології розробки веб-додатків, а також проведено аналіз, який дає змогу визначити основні переваги та недоліки цих методологій. У другому розділі наведено теоретичні відомості щодо pytest, досліджено його архітектуру, проаналізовано основні переваги та недоліки. У третьому розділі розробляється архітектура тестів автоматизованого тестування на основі pytest та її інтеграція у безперервну інтеграцію процесів CI/CD, проведено тестування та порівняльний аналіз отриманих даних з результатами існуючих методів. У висновках представлені результати проведеної роботи. Ключові слова: тестування, автоматизоване тестування, pytest, якісний продукт, CI/CD, безперервна інтеграція, SCRUM, тест-кейси.ukавтоматизоване тестуванняpytestSCRUMautomated testingЗасоби автоматизації тестування вебдодатку з використанням pytestMaster Thesis82 с.004.77