iOS自动化测试需求实现(iOS按键精灵类似)

需求分析:

作为以需求为驱动的IT公司,有再奇怪的需求都不奇怪,所以”24小时循测第三方应用这样的需求也可以接受。业务需求重点为:

1.24小时循测

2.无人值守,自动完成

3.自动界面操作(点击、滑动、输入)

4.比较每个页面是否有bug显示

技术分析:

根据以上业务需求做技术分析:

1.Andriod上自动界面操作、截图可以使用内置adb命令来完成,一台PC链接多台手机,驱动adb命令完成。

2.iOS上在越狱手机上实现自动界面操作、截图,通过socket驱动完成。 

iOS自动化测试需求实现(iOS按键精灵类似)

技术实现:

1.adb驱动层没什么难点,网络上很多文章和技术文档。

2.iOS等于要实现一个”按键精灵,现成资料和代码不多。

3.图片比较,可以使用OpenCV来实现。

代码开发:

作为iOS开发者,"iOS按键精灵开发的工作又落到我的肩上,从一开始的好无头绪,到现在完成”iOS按键精灵开发,大概用了7个工作日。

主要实现了全局点击、滑动、输入、截图功能。

使用”TheOS开发框架,将各个要实现的功能hook到系统层,如:Springboard.

越狱开发真是个大坑啊,不过在不断填坑的工程中,了解到了常见的APP攻击技术,对自己以后做开发的项目可以做一些相应的安全。

iOS按键精灵测试通过:iOS7 iOS8.3 

相关推荐