Tytuł artykułu
Treść / Zawartość
Pełne teksty:
Identyfikatory
Warianty tytułu
Comparative analysis of methods for testing web applications
Języki publikacji
Abstrakty
Celem pracy była analiza porównawcza sposobów testowania aplikacji internetowych w dwóch najpopularniejszych architekturach, tj. monolitycznej oraz mikroserwisowej. Na potrzeby badania strona serwerowa aplikacji (ang. backend) została napisana dwukrotnie z identycznymi funkcjonalnościami w każdej z tych architektur, aby móc dokładnie zestawić różnice w testowaniu tych samych możliwości programu. Wyniki ukazały aplikację monolityczną, jako łatwiejszą i szybszą do testowaniu. Architektura mikroserwisowa natomiast wymaga większego nakładu pracy związanej z testowaniem, ale pozwala na uzyskanie większej skalowalności i elastyczność w rozwijaniu aplikacji przez niezależne zespoły. Każda z badanych architektur z pewnością ma swoje wady i zalety. Z przeprowadzonych badań wynika również, że testy jednostkowe potrzebują dużo mniej czasu na wykonanie, jednak jeśli chodzi o kompleksowość analizy kodu testy integracyjne zwyciężają, pokrywającjednym testem znaczną część kodu aplikacji. Najlepszą jednak kompleksowość analizy kodu i zabezpieczenie aplikacji przed niechcianymi zmianami funkcjonalności uzyskamy stosując wszystkie znane nam rodzaje testów.
The aim of the study was to conduct a comparative analysis of testing approaches for web applications in the two most popular architectures: monolithic and microservices. For the purpose of the study, the server-side of the application (backend) was implemented twice with identical functionalities for each of these architectures, allowing for a precise comparison of testing differences for the same program capabilities. The results revealed that the monolithic application was easier and faster to test. However, the microservices architecture requires more energy spent on testing, but allows better scalability and elasticity for independent teams to develop applications. Each of the examined architectures certainly has its own advantages and drawbacks. Furthermore, the conducted research indicates that unit tests require significantly less time to execute. However, when it comes to comprehensive code analysis, integration tests outperform unit tests by covering a substantial portion of the application's code with a single test. Nonetheless, the best comprehensive code analysis and protection against unwanted functional changes can be achieved by employing all known types of tests.
Czasopismo
Rocznik
Tom
Strony
236--241
Opis fizyczny
Bibliogr. 18 poz., rys.
Twórcy
autor
- Politechnika Lubelska, Wydział Elektrotechniki i Informatyki (Poland)
- Politechnika Lubelska, Wydział Elektrotechniki i Informatyki (Poland)
Bibliografia
- 1. J. P. Sotomayor, S. C. Allala, P. Alt, J. Phillips, T. M. King, P. J. Clarke, Comparison of runtime testing tools for microservices, Annual Computer Software and Applications Conference (COMPSAC) 43(2) (2019) 356-361.DOI: https://doi.org/10.1109/COMPSAC.2019.10232
- 2. H. G. Gross, C. Atkinson, F. Barbier, Component integration through built-in contract testing, Component-based software quality, Lecture Notes in Computer 2693 (2003) 159-183.DOI: https://doi.org/10.1007/978-3-540-45064-1_8
- 3. H. Fischer, Testing in microservice systems: a repository mining study on open-source systems using contract testing, GUPEA, Gothenburg, 2021.
- 4. F. Selleby, Creating a Framework for Consumer-Driven Contract Testing of Java APIs, Bachelor’s degree, Linköping University, Linköping, 2018.
- 5. P. Stefan, V. Horky, L. Bulej, P. Tuma, Unit testing performance in java projects: Are we there yet?, Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering (2017) 401-412.DOI: https://doi.org/10.1145/3030207.3030226
- 6. R. Pawlak, Testowanie oprogramowania. Podręcznik dla początkujących, Helion, Gliwice, 2014.
- 7. R. Dahiya, A. Shahid, Importance of Manual and Automation Testing, CS & IT Conference Proceedings 9(17) (2019) 6-13.DOI: https://doi.org/10.5121/csit.2019.91719
- 8. G. Fink, F. Ido, JavaScript Unit Testing, Pro Single Page Application Development: Using Backbone, JS and ASP. Net, Apress, Berkeley, 2014.DOI: https://doi.org/10.1007/978-1-4302-6674-7_10
- 9. D. Raghuvanshi, Introduction to Software Testing, International Journal of Trend in Scientific Research and Development (IJTSRD) 4(3) (2020) 797-800.
- 10. M. Vesikkala, Visual regression testing for web applications, Master's thesis, Aalto University, Espoo, 2014.
- 11. H. Achkar, Model Based Testing of Web Applications, The Science Technicians' Association of New Zealand Conference (2010) 11-19.
- 12. Z. Qian, M. Huaikou, Z. Hongwei, a practical web testing model for web application testing, 2007 third international IEEE conference on signal-image technologies and internet-based system (2007) 434-441.DOI: https://doi.org/10.1109/SITIS.2007.16
- 13. N. Antunes, M. Vieira, Penetration testing for web services, Computer 47(2) (2013) 30-36.DOI: https://doi.org/10.1109/MC.2013.409
- 14. H. Saleh, JavaScript Unit Testing, Packt Publishing, Mumbai 2013.
- 15. T. Kleivane, Unit Testing with TDD in JavaScript, Master's thesis, Institutt for datateknikk og informasjonsvitenskap, Trondheim, 2011.
- 16. B. Kaalra, and K. Gowthaman, Cross Browser Testing Using Automated Test Tools, International Journal of Advanced Studies in Computers, Science and Engineering 3(10) (2014) 7-13.
- 17. P. Tonella, R. Filippo, Web Testing: a Roadmap for the Empirical Research, Seventh IEEE International Symposium on Web Site Evolution (2005) 63-70.
- 18. H. V. Gamido, M. V. Gamido, Comparative review of the features of automated software testing tools, International Journal of Electrical and Computer Engineering (IJECE) 9(5) (2019) 4473-4480.DOI: https://doi.org/10.11591/ijece.v9i5.pp4473-4478
Uwagi
Opracowanie rekordu ze środków MNiSW, umowa nr POPUL/SP/0154/2024/02 w ramach programu "Społeczna odpowiedzialność nauki II" - moduł: Popularyzacja nauki (2025).
Typ dokumentu
Bibliografia
Identyfikator YADDA
bwmeta1.element.baztech-749c2e3d-1614-4462-8061-a219b4e82acf
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.