环境搭建步骤:

1. 下载安装Oracle JDK;

  安装路径设置为C:\Program Files\Java\jdk1.8.0_152

2. 下载安装Eclipse;

  安装路径设置为C:\Eclipse

3. 下载安装Python3;

  安装路径设置为C:\Python37

4. 配置Java环境变量;

  增加JAVA_HOME环境变量:C:\Program Files\Java\jdk1.8.0_152

  增加CLASSPATH环境变量:.;%JAVA_HOME%\jre\lib\rt.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

5. 配置Python环境变量;

  将C:\Python37;C:\Python37\Lib;C:\Python37\Scripts;加入系统Path环境变量最后;

6. 安装Python Libraries(RobotFramework-Selenium2Library,Weditor);

  pip install RobotFramework-Selenium2Library

  pip install Weditor

7. 安装配置Eclipse插件(RED,PyDev,Subversion);

  Eclipse > Help > Eclipse MarketPlace进行搜索安装;

8. 启动Eclipse环境,初始化Robot项目结构;

  新建Robot类型项目,导入Selenium2Library及UIAutomator库链接;

  建立项目脚本的分层结构(Common Keywords,Business Keywords,Locator resource,Data resource,Python Libs);

9. 下载安装Google Chrome浏览器及ChromeDriver;

  Chrome浏览器从https://www.google.cn/intl/zh-CN/chrome/下载;

  ChromeDriver从镜像站点http://npm.taobao.org/mirrors/chromedriver/下载;

10. 下载和配置Android开发环境(ADB),并打开手机的USB调试模式;

  假设Android SDK 路径为E:\Android_Dev\adt\sdk

  将E:\Android_Dev\adt\sdk\platform-tools;E:\Android_Dev\adt\sdk\tools;加入系统Path环境变量;

  adb devices 确保状态为device,而不是offline或unauthorized

    * daemon not running. starting it now on port 5037 *
    * daemon started successfully *
    List of devices attached
    a444b4a45514c      device

11. 初始化UIAutomator2到手机;

  执行 python -m uiautomator2 init

12. 启动Weditor,连接Mobile移动设备;

  运行python -m weditor

  在浏览器中打开链接上的移动设备(手机)Android或iOS进行元素获取

13. 开始移动端的Hello World;

  编写打开通讯录程序,新建一个10086通讯录,保存;

  d.xpath('//*[@content-desc="联系人"]/android.widget.ImageView[1]').click()

  d.xpath('//*[@resourceId="com.samsung.android.contacts:id/contact_list_floating_action_button"]').click()

  d.xpath('//*[@resourceId="com.samsung.android.contacts:id/nameEdit"]').send_keys("中国移动客服", clear=True)

  d.xpath('//*[@resourceId="com.samsung.android.contacts:id/titleText", text="手机"]').send_keys("10086", clear=True)

  d.xpath('//*[@resource-id="com.samsung.android.contacts:id/menu_done", text="保存"]').click()

【原创】Python3 + Red + PyDev + Eclipse + Subversion + RobotFramework + UI Automator2 + Weditor 构建Web+Mobile 交互式移动App自动化测试环境的更多相关文章

  1. pydev+eclipse+python3.4运行hello word,提示Error in sitecustomize; set PYTHONVERBOSE for traceback:

    刚开始学习python,按照网上步骤搭建好pydev+eclipse的开发环境,运行print("hello world")提示下面错误: Error in sitecustomi ...

  2. SVN资源库报错:Could not create the view: org.tigris.subversion.subclipse.ui.repository.RepositoriesView

    解决方法: 关闭正在运行的myeclipse,然后打开myeclipse安装路径(我的安装在c盘): c:\ProgramFiles\MyEclipse\MyEclipse Professional ...

  3. RobotFrameWork Web自动化测试环境搭建

    前言 Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行.主要用于轮次很多的验收 ...

  4. Eclipse 导入外部项目无法识别为web项目并且无法在部署到tomcat下

    uss_web如果没有左上角那个球,tomcat就识别不出来的. 1.进入项目目录,找到.project文件,打开. 2.找到...代码段,加入如下标签内容并保存: <nature>org ...

  5. Selenium终极自动化测试环境搭建(二):Selenium+Eclipse+Python

    前面举例了Selenium+Eclipse+Junit+TestNG自动化测试环境的搭建,在前一篇的基础上,下面再举例Selenium+Eclipse+Python测试环境搭建. 第一步:安装Pyth ...

  6. Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python

    Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python 前面举例了Selenium+Eclipse+Junit+TestNG自动化测试环境的搭建,在前一篇的基础上, ...

  7. 采用Eclipse中间Maven构建Web项目错误(一)

    采用Eclipse中间Maven构建Web工程 1.在进行上述操作时.pom.xml一直报错 <project xmlns="http://maven.apache.org/POM/4 ...

  8. EventRay UI Kit – Web & Mobile 的素材

    EventRay UI 工具包是一个免费的,可以现成使用的界面套件.包括多个为  Web 和移动应用设计的布局和 UI 元素.所有你需要做的就是下载这个 UI 工具包,点击源码下载打开的页面即可下载. ...

  9. Eclipse中使用maven构建web项目中遇到的问题

    构建过程参考: http://blog.csdn.net/smilevt/article/details/8215558/ http://www.cnblogs.com/dcba1112/archiv ...

随机推荐

  1. [开源] LaravelPlus - 基于 Laravel 魔改,为方便实际业务使用 - 开发中

    目的 为了减少重复 CURD 和新项目的配置麻烦等问题,(就是为了骗星星:LaravelPlus )如: 现有的 infyomlabs/laravel-generator CODE 生成工具虽然好用, ...

  2. python中全局global和局部nonlocal命名空间

    python中全局global和局部nonlocal命名空间 局部名称空间对全局名称空间的变量可以引用,但是无法改变. count = 1 def func1(): count = 2 print(c ...

  3. pycharm虚拟环境的搭建

    目录 优点 windows 安装 配置虚拟环境管理器工作目录 MacOS.Linux 安装 工作文件 配置 使用 pycharm使用 新建项目 添加环境 使用环境 优点 1.使不同应用开发环境相互独立 ...

  4. jwt认证规则

    目录 认证规则图 django不分离 drf分类 认证规则演变图 数据库session认证:低效 缓存认证:高效 jwt认证:高效 缓存认证:不易并发 jwt认证:易并发 JWT认证规则 优点 格式 ...

  5. react 深度 循环嵌套对象渲染问题 map

    查了一些资料貌似react的循环渲染对象只有map,但map只支持数组对象. 接到后台数据如下 { "list": { "A": [{ "image& ...

  6. 基于PriorityQueue(优先队列)解决TOP-K问题

    TOP-K问题是面试高频题目,即在海量数据中找出最大(或最小的前k个数据),隐含条件就是内存不够容纳所有数据,所以把数据一次性读入内存,排序,再取前k条结果是不现实的. 下面我们用简单的Java8代码 ...

  7. Codeforces 1244F. Chips

    传送门 显然可以注意到连续的两个相同颜色的位置颜色是不会改变的,并且它还会把自己的颜色每秒往外扩展一个位置 同时对于 $BWBWBW...$ 这样的序列,它每个位置的颜色每一秒变化一次 然后可以发现, ...

  8. 【ES6 】var/let/const的区别

    var 声明变量 没有区级作用域 可以预解析 可以重复定义 声明的全局变量属于顶层对象(window)的属性 let 声明变量 有块级作用域 没有预解析 不可以重复定义 声明的全局变量不属于顶层对象( ...

  9. 学习笔记--三分法&秦九韶算法

    前言 其实也没什么好说的吧,三分法就是用来求一个单调函数的最值和满足最大值的\(x\),秦九韶算法就是在\(O(N)\)时间内求一个多项式值 怎么用 三分法使用--看这篇:https://www.cn ...

  10. centos7配置rsync+inotify数据实时共享

    关于centos7版本上面搭建rsync服务并且实现实时同步之前一直是在6版本上面搭建rsync服务,在7版本上面折腾了半天.此处总结下inotify下载地址:http://github.com/do ...