关于appium+python的微框架的思路以及思考

最近在搞appium+python移动端的自动化任务编写,想通过一个简单的APP的全套自动化脚本编写,提炼出一套完整的适用于大部分APP的方法,很简单的思路,但是却有很强的弊端,当然也有其优势,对我们公司而言利大于弊,希望你们可以更好的建议。

1.由于要做到一个yaml文件对应一个单元测试功能,所以要考虑以下问题:

(1)同一种系统不同分辨率的手机型号适配;

(2)iOS与Android两种不同系统,由于开发不一样,我们公司制度的不全面性,所以导致他们的命名规范不一致;

(3)由于iOS与Android部分控件不一样,导致他们的部分页面布局不一样,针对他们的特殊处理;

(4)针对输入框内容,iOS与Android调用输入法的不一致性;

(5)操作成功后,数据以及页面的判断

2.针对以上遇到的问题,暂时采用坐标方法解决,但是这不是最好的方法,只是解决问题行之有效的一个方法,思路如下:

(1)以编写测试脚本手机的分辨率为标准,获取对应button的物理坐标,再根据不同手机之间的分辨率编写比例公式,计算其相对坐标

(2)采用driver.manage().window().getSize().height方法获取执行测试用例手机的高,driver.manage().window().getSize().width方法获取执行测试用例手机的宽,根据(1)的方法算出对应的坐标

(3)采用selenium\webdriver\remote\webdiver.py方法截取当前屏幕并与美工图做对比,判断登录成功与否、信息提交与否、注册是否成功等情况

(4)采用python-mysql,链接数据库获取短信验证码等

(5)log日志方法编写

(6)获取设备等信息公共方法编写

(7)测试报告文件发送公共方法编写

(8)图片智能分析验证方法验证编写

(9)实现坐标元素方法点击方法编写......

这是我的一个大致思路,希望可以吸取更多的经验和建议。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180402G0BG0B00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券