Macaca初体验-Android端(Python)

前言:

Macaca 是一套面向用户端软件的测试解决方案,提供了自动化驱动,周边工具,集成方案。由阿里巴巴公司开源:http://macacajs.github.io/macaca/

特点:

同时支持PC端和移动端(Android、iOS)自动化测试。

支持JavaScript(Node.js)、Java、Python。

周边工具:支持用例录制的UI Recorder


本次教程将介绍如何使用Macaca进行Android端自动化测试。使用编程语言为Python3.5(Macaca只支持Python3.4以上版本)


环境安装:

1、Macaca环境+Android SDK环境+Java环境+Node环境见:Android环境配置

2、通过macaca doctor可以检查环境是否配置成功,如下图所示则表示环境均配置正常,如果有标红提示,则需要对应处理。

>>macaca doctor

3、安装Macaca Python Client,支持pip安装。

>>python3 -m pip install wd


用例编写:

项目目录F:workspacemacaca-androidmacaca-test下创建测试用例:macaca-android-sample.test.py,其中macaca-test为测试目录集。

https://github.com/macaca-sample/sample-python/blob/master/tests/macaca-android-sample.test.py

代码如下:


API详解:

driver.init()  初始化

driver.quit()  退出

driver.back() 返回上一步

driver.element_by_id  根据id来查找元素

driver.element_by_name 跟据name来查找元素

driver.elements_by_class_name  跟据class_name来查找元素

driver.accept_alert()  alert弹框确认

driver.touch('tap', {'x':100,'y':100})  在设备上应用触摸操作,例如:tap/doubleTap/press/pinch/rotate/drag ,操作后面填写对应坐标x,y值

driver.save_screenshot  保存截图

备注:与appium的API极为相似,熟悉appium的同学可以快速上手,定位元素的方法一致。

详细API见官网:https://macacajs.github.io/wd.py/api.html


执行用例:

1、启动macaca服务:

>>macaca server --verbose  //加--verbose可以看到详细的执行过程

2、执行用例:

>>python3 macaca_testmacaca-android-sample.test.py


以上

作者:搁浅
出处: http://www.cnblogs.com/xiaoxi-3-/
如果对您有帮助,请关注我的同名简书:https://www.jianshu.com/u/da1677475c27
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

原文地址:https://www.cnblogs.com/twodog/p/12139393.html