Способи та засоби автоматизації тестування веб-додатків

dc.contributor.advisorПавловський, Володимир Ілліч
dc.contributor.authorРазсказов, Микита Петрович
dc.date.accessioned2024-02-08T09:42:48Z
dc.date.available2024-02-08T09:42:48Z
dc.date.issued2023
dc.description.abstractАктуальність теми. Контроль якості і тестування наразі є двома критичними аспектами сучасної розробки програмного забезпечення, зокрема вебдодатків. Тестування програмного забезпечення являє собою перевірку на певному наборі тестів, відповідності між очікуваним і реальним результатом роботи додатку. В епоху цифрової трансформації все більше користувачів залучається до взаємодії з різними програмами та системами, і велика частка цих користувачів припадає на веб-застосунки. Користувачі очікують від додатків безпомилкового, зручного та безпечного досвіду взаємодії. У свою чергу потребами компанії-розробника є також задоволеність користувачів, безпека (наприклад, захист персональних даних) і прийнятний час розробки. Оскільки в реальному житті розробка складного програмного забезпечення, якими є вебдодатки, не може не супроводжуватись різними помилками, то перед розробниками постає потреба в контролі якості. Тестування є однією з технік такого контролю і дає змогу своєчасно знайти та виявити помилку. У свій час автоматичне тестування дозволяє робити це швидко з мінімальним впливом людського фактору. Раціонально організований контроль якості дозволяє надати кінцевому споживачу якісний продукт. Об'єктом дослідження є засіб паралельного автоматизованого тестування вебдодатків. Предметом дослідження є способи та засоби автоматизації тестування. Мета роботи: розробка засобу автоматизованого тестування веб-додатків, що пришвидшить час виконання тестів, завдяки їх паралельному виконанню. Наукова новизна полягає в наступному: 1. Запропоновано модифікований алгоритм розподілення та паралельного виконання тестів, що полягає в більш ефективному розподілені тестів; 2. Запропоновано зручну організацію з'єднання з базою даних при паралельному виконанні тестів. Практична цінність отриманих в роботі результатів полягає в зменшенні часу виконання тест-кейсів без необхідності складного налаштування розробленого засобу, що може бути особливо корисним великим проектам, в яких є велика кількість тест-кейсів. Апробація роботи. Основні положення і результати роботи були представлені та обговорювались на: 1. XVI-тій науковій конференції магістрантів та аспірантів «Прикладна математика та комп’ютинг» ПМК-2023 (Київ, 28-30 листопада 2023 р.). 2. VI-тій Всеукраїнській науково-практичній інтернет-конференції молодих вчених та студентів «Сучасні інформаційні системи та технології» за тематикою «Сучасні комп’ютерні системи та мережі в управлінні» (30 листопада 2023 р., м. Хмельницький, м. Херсон). Публікації. За тематикою проведених досліджень опубліковано 2 наукові праці, а саме тези доповідей на 2-х конференціях. Структура та обсяг роботи. Магістерська дисертація складається зі вступу, чотирьох розділів, висновків по кожному розділу та загальних висновків по роботі в цілому, списку використаних літературних джерел (39 найменувань) та додатків. У вступі подано загальну характеристику роботи, зроблену оцінку сучасного стану проблеми, обґрунтовано актуальність напрямку дослідження, сформульовано мету і задачі дослідження, показано наукову новизну отриманих результатів і практичну цінність роботи, наведено відомості про апробацію результатів та їх впровадження. У першому розділі розглянуто основні потреби та проблеми тестування програмних додатків, способи тестування вебдодатків. Проведено порівняльний огляд популярних фреймворків, таких як PHPUnit та Codeception і підкреслено їх можливості та відмінності. Розглянуто види тестів та їх призначення, а також засоби паралельного тестування. У другому розділі запропоновано і розроблено архітектуру для фреймворку та необхідні модулі з вимогами до них. Проаналізовані способи організації паралельного виконання і роботи з пам'яттю в мові PHP. У третьому розділі проаналізовано та відповідно до результатів аналізів обрано засоби необхідні для розробки фреймворку-обгортки паралельного виконання тестів. Розроблено фреймворк паралельного виконання тестів. У четвертому розділі було проведено оцінку ефективності роботи розробленого фреймворку. Для цього створені оптимальні тест-кейси, що оцінюють продуктивність фреймворку при різних умовах та запропоновано методику усереднення значень вимірянного часу роботи тестів. Доведено, що використання паралельного виконання тестів, що є можливим завдяки розробленому фреймворку, може кратно пришвидшити час їх виконання. У висновках виділяються результати дослідження, що сформовані на основі мети і завдання, що описані у вступі. Ключові слова: автоматизоване тестування, багатопроцесність, фреймворк, тест-кейси, PHP, PHPUnit.
dc.description.abstractotherActuality of theme. Quality assurance and testing are currently two critical aspects of modern software development, particularly web applications. Software testing is a check on a certain set of tests of the correspondence between the expected and actual performance of the application. In the era of digital transformation, more and more users are involved in interacting with various applications and systems, and a large proportion of these users are web applications. Users expect an error-free, user-friendly and secure interaction experience from applications. In turn, the needs of the development company are also user satisfaction, security (for example, protection of personal data) and acceptable development time. Since in real life the development of complex software, which are web applications, cannot but be accompanied by various errors, developers face the need for quality control. Testing is one of the techniques of such control and makes it possible to find and detect an error in a timely manner. At one time, automatic testing allows you to do it quickly with minimal human intervention. Rationally organized quality control allows to provide the final consumer with a quality product. The object of research: tool for parallel automated testing of web applications. The subject of research: ways and tools of testing automation. The purpose and objectives of the research Development of a tool for automated testing of web applications, which will speed up the execution time of tests due to their parallel execution. The scientific novelty of the obtained results is as follows. 1. A modified algorithm for distribution and parallel execution of tests is proposed, which consists in more efficient distribution of tests; 2. A convenient organization of connection to the database during parallel execution of tests is offered. The practical value of the results obtained in the work consists in reducing the time of execution of test cases without the need for complex configuration of the developed tool, which can be especially useful for large projects with a large number of test cases. Approbation of work: Two topics of one of the sections of the master's thesis will be presented at two scientific conferences, respectively: 1. APPLIED MATHEMATICS AND COMPUTING XVI scientific and practical conference of master's and postgraduate students of PMK-2023 of the Faculty of Applied Mathematics (November 28 - 30, 2023) Kyiv, Ukraine. 2. ХIIIth INTERNATIONAL SCIENTIFIC CONFERENCE OF STUDENTS AND YOUNG RESEARCHERS "MODERN INFORMATION TECHNOLOGY 2023" (November 30, 2023) Khmelnytskyi, Kherson, Ukraine. Publications: 2 scientific works have been published on the subject of the conducted research, namely abstracts of reports at 2 conferences. The structure and scope of the dissertation. The master's thesis consists of an introduction, four chapters, conclusions on each chapter and general conclusions on the work as a whole, a list of used literary sources (39 names) and appendices. The introduction presents a general description of the work, makes an assessment of the current state of the problem, substantiates the relevance of the research direction, formulates the purpose and tasks of the research, shows the scientific novelty of the obtained results and the practical value of the work, provides information about the approbation of the results and their implementation. In the first section, the main needs and problems of testing software applications, methods of testing web applications are considered. A comparative review of popular frameworks such as PHPUnit and Codeception is conducted and their capabilities and differences are highlighted. Types of tests and their purpose, as well as means of parallel testing are considered. In the second section, the architecture for the framework and the necessary modules with their requirements are proposed and developed. Analyzed ways of organizing parallel execution and working with memory in the PHP language. In the third section, the tools necessary for the development of a wrapper framework for parallel execution of tests were analyzed and, according to the results of the analysis, selected. A framework for parallel execution of tests has been developed. In the fourth chapter, the effectiveness of the developed framework was evaluated. For this purpose, optimal test cases have been created that evaluate the performance of the framework under various conditions, and a method of averaging the values of the measured time of the tests has been proposed. It has been proven that the use of parallel execution of tests, which is possible thanks to the developed framework, can multiply the time of their execution. The conclusions highlight the results of the research, formed on the basis of the goal and task described in the introduction. Keywords: test automation, multiprocessing, framework, test-cases, PHP, PHPUnit
dc.format.extent99 с.
dc.identifier.citationРазсказов, М. П. Способи та засоби автоматизації тестування веб-додатків : магістерська дис. : 123 Комп'ютерна інженерія / Разсказов Микита Петрович. – Київ, 2023. – 99 с.
dc.identifier.urihttps://ela.kpi.ua/handle/123456789/64396
dc.language.isouk
dc.publisherКПІ ім. Ігоря Сікорського
dc.publisher.placeКиїв
dc.subjectавтоматизоване тестування
dc.subjectбагатопроцесність
dc.subjectфреймворк
dc.subjectтест-кейси
dc.subjectPHP
dc.subjectPHPUnit
dc.subjecttest automation
dc.subjectmultiprocessing
dc.subjectframework
dc.subjecttest-cases
dc.subject.udc004.77
dc.titleСпособи та засоби автоматизації тестування веб-додатків
dc.typeMaster Thesis

Файли

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