摘要(英) |
In the process of software development, in order to repair, refactor or add functions, engineers will constantly modify the existing code. To ensure the quality of the software after every change, regression testing is very important. so as to allow testers to perform regression testing more efficiently, the laboratory has developed a set of recording/playback testing tool - Korat.
For achieve non-platform dependence, Korat uses image recognition to detect targets. On non-Windows platforms, we use the image capture card to obtain the screen of the system under test as the image source for image recognition. We found that tools such as Korat, which are based on computer vision to identify target, have GUIs in specific situations, such as anti-aliasing, target image changes, or image capture card signal noise interference, resulting in the current test image and recording test image is different, the test case cannot be played back normally.
In this thesis, we will explain the specific situation of the test case that cannot be correctly executed for recording/playback test tool Korat, and propose an automatic learning and correction script method to automatically increase the target picture and use the method of image recognition result set. Reduce the impact of the above problems, and finally explain the direction that can be improved in the future. |
參考文獻 |
[1] Chen, Xin-Chih. “Korat: An O.S.-independent Capture/Replay Test Automation System.” Institute of Computer Science & Information Engineering, National Central University, 2014.
[2] Jorgensen, Paul C. Software testing: a craftsman’s approach. CRC press, 2018.
[3] Nidhra, Srinivas, and Jagruthi Dondeti. "Black box and white box testing techniques-a literature review." International Journal of Embedded Systems and Applications (IJESA) 2.2 (2012): 29-50.
[4] Leung, Hareton KN, and Lee White. "Insights into regression testing (software testing)." Proceedings. Conference on Software Maintenance-1989. IEEE, 1989.
[5] Agrawal, Hiralal, et al. "Incremental regression testing." 1993 Conference on Software Maintenance. IEEE, 1993..
[6] Fewster, Mark, and Dorothy Graham. Software test automation. Reading: Addison-Wesley, 1999.
[7] Jorgensen, Alan, and James A. Whittaker. "An api testing method." Proceedings of the International Conference on Software Testing Analysis & Review (STAREAST 2000). 2000.
[8] Brooks, Penelope A., and Atif M. Memon. "Automated GUI testing guided by usage profiles." Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering. 2007.
[9] RaiMan. “RaiMan’s SikuliX”. 1 June 2020 <http://sikulix.com/>.
[10] Selenium. “SeleniumHQ Browser Automation”. 2 June 2020 <https://www.selenium.dev/>.
[11] TestComplete. “Automated UI Testing Tools | TestComplete”. 2 June 2020 <https://smartbear.com/product/testcomplete/overview/>.
[12] SideeX. “SideeX | Auto-First Record-Playback Web Test Automation”. 2 June 2020 <https://sideex.io/>.
[13] Yeh, Tom, Tsung-Hsiang Chang, and Robert C. Miller. "Sikuli: using GUI screenshots for search and automation." Proceedings of the 22nd annual ACM symposium on User interface software and technology. 2009.
[14] ADLINK. “Edge Computing | IoT Solutions | ADLINK - ADLINK Technology”. 3 June 2020 <https://www.adlinktech.com/en/index.aspx>.
[15] Cheng, Yung-Pin, Ching-Wei Li, and Yi-Cheng Chen. "Apply computer vision in GUI automation for industrial applications." Mathematical biosciences and engineering: MBE 16.6 (2019): 7526-7545.
[16] OpenCV. “Template Matching — OpenCV 2.4.13.7 documentation”. 1 June 2020 <https://docs.opencv.org/2.4/doc/tutorials/imgproc/histograms/template_matching/template_matching.html>.
[17] Chen, Li-Hsuan. “Enhance Korat by Branch Capability in Capture/Replay User Scenario to Industrial Test Case Automation.” Institute of Computer Science & Information Engineering, National Central University, 2018. |