Засоби автоматизації тестування вебдодатку з використанням pytest

dc.contributor.advisorТесленко, Олександр Кирилович
dc.contributor.authorСенеджук, Андрій Юрійович
dc.date.accessioned2023-01-04T09:49:53Z
dc.date.available2023-01-04T09:49:53Z
dc.date.issued2022
dc.description.abstractenActuality of theme. Software testing is a check of compliance between the expected and real behavior of the system/program, carried out on a finite set of tests, which in turn are selected in a certain way. In a broader sense, testing is one of the quality control techniques, which includes activities for planning work, designing test cases, performing the test itself, and analyzing the obtained results. Application development cannot be without errors/defects. And in general, when making any changes to complex software products, it is very difficult to understand how it will be reflected in other parts of the architecture. Web applications are complex software products because the application logic is distributed between the server and the client. In turn, companies suffer huge losses due to the lack of software quality. In order to speed up the search and detection of defects in the system and provide a high-quality final software product - there is testing. The object of research are functional and automated software testing of the product. The subject of the study are taking into account the relevance of the research and the identified problems, the goal of the master's thesis is to create sets of test cases and develop automated test scenarios for testing web applications. These actions are designed to achieve the overall goal of ensuring the quality of the software product and identifying hidden defects. The set goal will determine the following scientific and practical tasks, which will be solved in the research process: 1) determine the essence of web applications; 2) research the techniques and methodologies of web application testing; 3) define the essence of functional testing and create test cases for web applications; 4) create automated scenarios for testing web applications. modified smart contract based on a hybrid blockchain network. The scientific novelty of the obtained work results is as follows. 1) a method of ensuring a high-quality software product is proposed; 2) a system of automated test scenarios designed to search for software defects in the software code has been developed. The practical value of the results obtained in the work is that the developed system of automated test scenarios allows you to get a really high-quality software product at the output, which can be used by clients from all over the world and use all the necessary software functionality without defects and with benefit. Approbation of work. The main provisions and results of the work were presented and discussed at: I. XIV scientific conference of master's and postgraduate students “Applied mathematics and computing” PMK-2022 (Kyiv, November 17-19, 2022). II. XIV international scientific and technical Internet conference "Modern methods, information, software and technical support of management systems of organizational, technical and technological complexes" NUHT-2022 (Kyiv, November 5, 2022). Publications. Two scientific papers were published on the topic of the research, namely abstracts of reports at 2 conferences. Structure and scope of work. The master's thesis consists of an introduction, three chapters and conclusions. In the introduction, a general description of the work is presented, an assessment of the current state of the problem is made, and the relevance of the research direction is substantiated. In the first chapter, the main concepts of web applications, web application development methodologies are considered, and an analysis is carried out, which makes it possible to determine the main advantages and disadvantages of these methodologies. The second chapter provides theoretical information about pytest, explores its architecture, and analyzes the main advantages and disadvantages. In the third section, the test architecture of automated testing based on pytest is developed and its integration into the continuous integration of CI/CD processes, testing and comparative analysis of the obtained data with the results of existing methods is carried out. The results of the work are presented in the conclusions. Key words: testing, automated testing, pytest, quality product, CI/CD, continuous integration, SCRUM, test cases.uk
dc.description.abstractukАктуальність теми. Тестування програмного забезпечення – це перевірка відповідності поміж очікуваною та реальною поведінкою системи/програми, здійснюється на кінцевому наборі тестів, які в свою чергу вибираються певним шляхом. У більш широкому сенсі, тестування – це одна з технік контролю якості, яка включає активності по плануванню робіт, проєктуванню тестових випадків, виконанню самого тестування та аналізу отриманих результатів. Розробка додатків не може не супроводжуватись помилками/дефектами. Та і взагалі, при внесенні якихось змін у складні програмні продукти – дуже важко зрозуміти, як це відобразиться на інших частинах архітектури. Веб-застосунки належать до складних програмних продуктів, тому що логіка застосунку розподілена між сервером та клієнтом. У свою чергу, за компаніями тягнуться величезні збитки через відсутність якості програмного забезпечення. Для того, аби пришвидшити пошук та виявлення у системі дефектів та надати саме якісний кінцевий програмний продукт – й існує тестування. Об’єктом дослідження є функціональне та автоматизоване тестування програмного продукту. Предметом дослідження є вебдодаток. Мета роботи: (якісний продукт) з урахуванням актуальності дослідженню і виявлених проблем, метою магістерської роботи є створення наборів тестових випадків та розробка автоматизованих тестових сценаріїв тестування веб-додатків. Дані дії покликані на досягнення загальної цілі – забезпеченню якості програмного продукту та виявленню прихованих дефектів. Поставлена мета визначатиме наступні наукові та практичні задачі, які й будуть вирішуватись в процесі дослідження: 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
dc.format.page82 с.uk
dc.identifier.citationСенеджук, А. Ю. Засоби автоматизації тестування вебдодатку з використанням pytest : магістерська дис. : 123 Комп'ютерна інженерія / Сенеджук Андрій Юрійович. – Київ, 2022. – 82 с.uk
dc.identifier.urihttps://ela.kpi.ua/handle/123456789/51678
dc.language.isoukuk
dc.publisherКПІ ім. Ігоря Сікорськогоuk
dc.publisher.placeКиївuk
dc.subjectавтоматизоване тестуванняuk
dc.subjectpytestuk
dc.subjectSCRUMuk
dc.subjectautomated testinguk
dc.subject.udc004.77uk
dc.titleЗасоби автоматизації тестування вебдодатку з використанням pytestuk
dc.typeMaster Thesisuk

Файли

Контейнер файлів
Зараз показуємо 1 - 1 з 1
Вантажиться...
Ескіз
Назва:
Senedzhuk_mahistr.pdf
Розмір:
2.15 MB
Формат:
Adobe Portable Document Format
Опис:
Ліцензійна угода
Зараз показуємо 1 - 1 з 1
Ескіз недоступний
Назва:
license.txt
Розмір:
9.1 KB
Формат:
Item-specific license agreed upon to submission
Опис: