The aim of this thesis is to set up an universal system for automated testing of web applications and services. To achieve this goal, we needed a master tool for continious integration, a web services testing tool, a web application testing tool, and a web server to install the system on it. Several candidates were selected for each tool. The tools were compared using predefined criteria. Finally, the ones that best suite these criteria were selected.
In case of continious integration tools, we compared Jenkins, TeamCity, and Travis CI. Based on predefined criteria, we have chosen Jenkins. Selenium, Katalon Studio and TestComplete have been shortlisted for testing web applications. Katalon Studio is the most appropriate one, because it is the easies to use. The final web service testing tools included SoapUI, Postman and Apache JMeter. Due to the choice of Jenkins, we considered integration as the main criterion, so we chose SoapUI, which is the only one that allows it. We also needed an application server, so we compared WildFly and Apache Tomcat. The first one turned out to be better.
Finally, the system is implemented and used in practice. We added functionalities for e-mail notification, verification of code and display of test results to Jenkins.
The entire system was tested in a Slovenian telecommunications company and it proved to be successful. Testing of web services and applications, saves the considerable amount of time and allows more control during updates.
|