GUI test automation with SWTBot
Mazurkiewicz, Milosz (2010)
Avaa tiedosto
Lataukset:
Mazurkiewicz, Milosz
Vaasan ammattikorkeakoulu
2010
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201001121220
https://urn.fi/URN:NBN:fi:amk-201001121220
Tiivistelmä
In this thesis the author presents theoretical background of GUI test automation as well as technologies, tools and methodologies required to fully understand the test program written in SWTBot. Practical part of the thesis was to implement a program testing File Menu options of Pegasus RCP application developed in Nokia Siemens Networks.
Concluding this dissertation, in the author’s opinion test programs written using SWTBot are relatively easy to read and intuitive for people familiar with basic concepts of Eclipse RCP. Without any doubt SWTBot’s API is large enough to test effectively such complex application as Pegasus RCP. The biggest problem could be lack of good documentation and tutorials which makes it difficult to start with. The best and most up to date is Javadoc that comes with SWTBot’s code. Therefore a developer which wants to start writing SWTBot tests has to spend some time with it to get familiar with the API experimenting with the code. Although SWTBot is not a commercial tool, the growing community of testers and developers using it seems promising considering the need of support. Despite of what is published on SWTBot’s home page, SWTBot lacks a recorder which implicates that the tester has to be a programmer. As the analysis has shown the automated tests execute over twenty times faster comparing with manual tests.
Pieces of code presented in this document, instructions how to achieve tests independence, error recovery, and test synchronization, together with big test program implementation (APPENDIX 2) make up a great tutorial which will help developers to get familiar with SWTBot’s capabilities. FileMenuTest.java consists of 30 test cases and has almost 1500 lines of code. The author has made those tests compliant with all the objectives for well-designed test cases. The program was integrated with the nightly builds of CruiseControl, which means the author’s work is utilised on a daily basis.
Concluding this dissertation, in the author’s opinion test programs written using SWTBot are relatively easy to read and intuitive for people familiar with basic concepts of Eclipse RCP. Without any doubt SWTBot’s API is large enough to test effectively such complex application as Pegasus RCP. The biggest problem could be lack of good documentation and tutorials which makes it difficult to start with. The best and most up to date is Javadoc that comes with SWTBot’s code. Therefore a developer which wants to start writing SWTBot tests has to spend some time with it to get familiar with the API experimenting with the code. Although SWTBot is not a commercial tool, the growing community of testers and developers using it seems promising considering the need of support. Despite of what is published on SWTBot’s home page, SWTBot lacks a recorder which implicates that the tester has to be a programmer. As the analysis has shown the automated tests execute over twenty times faster comparing with manual tests.
Pieces of code presented in this document, instructions how to achieve tests independence, error recovery, and test synchronization, together with big test program implementation (APPENDIX 2) make up a great tutorial which will help developers to get familiar with SWTBot’s capabilities. FileMenuTest.java consists of 30 test cases and has almost 1500 lines of code. The author has made those tests compliant with all the objectives for well-designed test cases. The program was integrated with the nightly builds of CruiseControl, which means the author’s work is utilised on a daily basis.