Unity Application Testing Automation with Appium and Image Recognition

被引:6
作者
Mozgovoy, Maxim [1 ]
Pyshkin, Evgeny [1 ]
机构
[1] Ikki Machi, Aizu Wakamatsu, Fukushima 9658580, Japan
来源
TOOLS AND METHODS OF PROGRAM ANALYSIS | 2018年 / 779卷
关键词
GUI; Testing; Computer game; Automation; Non-native; Smoke test; OpenCV; Unity; Appium;
D O I
10.1007/978-3-319-71734-0_12
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This work is dedicated to the problem of integrating simple functional tests (smoke tests) into the automated continuous integration pipeline. While functional testing is typically performed manually by the QA staff members, there is a large number of scenarios that can be automated, and readily available instruments, such as Appium and Calabash, designed for this task. Automated smoke testing is especially challenging for the applications with nonstandard GUI, such as games made with Unity. The only viable option in this case is to analyze screen content as a flat image and identify GUI elements with pattern matching algorithms. This approach is not novel, but its practical applicability and limitations are rarely discussed. We consider a case study of a mobile tennis game project, developed in Unity and covered with a suite of Appium-supported functional tests. We show how image matching capabilities of OpenCV library can be used in Appium tests to build a reliable automated QA pipeline.
引用
收藏
页码:139 / 150
页数:12
相关论文
共 15 条
[1]  
[Anonymous], 2000, ARCHITECTURAL STYLES
[2]  
[Anonymous], 2013, Learning OpenCV: Computer Vision in C++ with the OpenCVLibrary
[3]  
Beck K., 2003, Test Driven Development: By Example
[4]  
Dalheimer M., 2002, PROGRAMMING QT WRITI, V32
[5]  
Dan North, 2006, BETTER SOFTWARE, V8, P3
[6]  
Duvall P., 2007, Continuous Integration: Improving software quality and reducing risk
[7]  
Hans M., 2015, Appium essentials
[8]  
Helppi Ville-Veikko, 2016, USING OPENCV AKAZE M
[9]  
Kazmierczak Szymon, 2016, APPIUM IMAGE RECOGNI
[10]  
Mahalingam Manoj., 2014, Learning Continuous Integration with TeamCity