Popis: |
Cilj diplomske naloge je vzpostavitev okolja za avtomatsko testiranje programske opreme. Postopek je razdeljen na več korakov, v katerih je treba izbrati naslednje dele okolja: orodje za nadzor programov in drugih aplikacij, sistem nadzora različic, aplikacijske strežnike za izvajanje storitev, rešitve za prevajanje oziroma izgradnjo javanske kode ter avtomatske teste, ki zagotavljajo pravilno delovanje. Pri vsakem koraku je treba določiti nekaj primernih potencialnih programskih rešitev in jih glede na njihove prednosti in slabosti med seboj primerjati po smiselnih kriterijih. Izbrane rešitve so celovito okolje, ki omogoča avtomatsko testiranje programske opreme. Za nadzor programov in aplikacij je zaradi svoje enostavnosti izbran Jenkins. Na področju sistema nadzora različic smo zaradi naprednih funkcij izbrali GIT. Med aplikacijskimi strežniki je s svojo zmogljivostjo in dostopnostjo izstopal Wildfly. Najcelovitejša rešitev za prevajanje in izgradnjo javanske kode je bila Gradle. Za avtomatsko testiranje spletnih aplikacij je kot najzanesljivejši izbran Selenium, za funkcijsko testiranje pa, zaradi točnosti rezultatov, SOAP UI. Tako sestavljeno okolje je opisano na praktičnem primeru tako za osnovno, kot tudi za naprednejšo uporabo. Okolje je bilo preverjeno v praksi, kjer se je dobro izkazalo, vendar bi ga bilo mogoče izboljšati z uporabo zanesljivejšega, a plačljivega aplikacijskega strežnika ter boljšega avtomatskega testiranja. The aim of this thesis was the establishment of an environment for automatic software testing. The process was split into several steps in where the following environment components had to be chosen: a tool for managing the programs and other applications, a concurrent version system, an application server to run web services, an approach for translation or assembly of the Java code and automatic tests which ensure correct operation. With every step a few potential software solutions had to be checked and compared using a set of criteria based on their strengths and weaknesses. Jenkins was selected for the management of programs and applications for its simplicity. For the concurrent version system GIT was the selected solution due to its advanced functions. Among application servers Wildfly was above the rest because of its abilities and accessibility. For the translation and assembly of the Java code the best solution was Gradle. Selenium, selected for its reliability, was used for automatic testing, and SOAP UI for its accurate results. This environment was described using a practical case for basic and advanced use as well. The environment was tested in practice where it performed admirably. However it could be still improved using a commercial and more reliable application server along with better automatic testing software. |