一、环境搭建

  • 必备软件:

    • Windows或MacOS系统的电脑
    • python
    • pycharm
    • Android SDK(需要配置环境变量,网上有教程)
    • Appium客户端(需要配置Android SDK环境变量,网上有教程)
  • 安装jdk配置环境变量,参考博客:(21条消息) JAVA开发环境搭建_Krito.的博客-CSDN博客
  • 安装node.js
  • 执行命令:
    • pip install Appium-python-client
    • npm -g install appium
  • 安卓设备

二、使用安卓进行自动化测试

步骤:

  1. 安卓手机打开调试模式,连接至电脑
  2. 在cmd中命令:adb devices 查看连接的设备
  3. 打开appium启动服务并编辑配置信息
    • appPackage 需要服务启动的app的包名
    • appActivity 这个app的启动服务
    • platformName 固定参数“Android”
    • platfromVersion 系统版本
    • deviceName 手机名称
  4. 编辑完配置信息后,点击Start Session

    

  5. 连接成功,可查看到appium已和真机进行了连接

    

三、编写自动化脚本

Appium+Python UI自动化框架 - 彭哈哈 - 博客园 (cnblogs.com)

四、参考资料

在配置环境的过程中会遇到各种问题,我将我遇到过的问题抛出来大家可以一起讨论,不定时更新!!!

1)Appium 报错:Permission denial: writing to settings requires:android.permission.WRITE_SECURE_SETTINGS

解决方法:使用adb shell am start package/activity,如果可以启动app,那么需要检查手机,在开发者模式中打开“禁止权限监控”选项(小米:“USB调试(安全设置)”)

2)Appium 报错:failed to install settings_apk-debug.apk 或者 settings_apk-debug.apk

解决方法:手机开发者模式中,开启UBS安装

3)Appium 报错:Original error: Could not find 'apksigner.jar

解决方法:进入android sdk目录找到apksigner.jar, 复制到 platform-tools文件夹下

4)想要通过pip安装python依赖的任何模块库,只要提示超时均可以使用固定语句,指定国外源来下载

python -m pip install 模块名 -ihttp://pypi.douban.com/simple --trusted-host pypi.douban.com

  

    

    

      

  

Android自动化测试的更多相关文章

  1. 使用 flow.ci 实现 Android 自动化测试与持续集成

    在上篇文章--如何实现 Android 应用的持续部署中,我们使用的是 flow.ci + Github + fir.im 实现 Android 应用的持续部署.对于 Android 开发者,他们可能 ...

  2. Android自动化测试-Robotium(一)简介

    一.Robotium原理 Robotium是一款Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击.长按.滑动等).查找和断言机制的API ...

  3. 解放双手——Android自动化测试

    解放程序猿宝贵的右手(或者是左手) http://blog.csdn.net/eclipsexys/article/details/45622813 --Android自动化测试技巧 Google大神 ...

  4. Android自动化测试框架对比

    1.Monkeyrunner:优点:操作最为简单,可以录制测试脚本,可视化操作:缺点:主要生成坐标的自动化操作,移植性不强,功能最为局限:2.Rubotium:主要针对某一个APK进行自动化测试,AP ...

  5. 解放程序猿宝贵的右手(或者是左手) ——Android自动化测试技巧

    解放双手--Android自动化测试 - eclipse_xu - 博客频道 - CSDN.NET 解放程序猿宝贵的右手(或者是左手) --Android自动化测试技巧

  6. Android自动化测试基础知识——MONKEY测试工具(转的)

    本周开始启动手机输入法simeiji的自动化测试,同时开始接触手机浏览器自动化测试.接下来会对android自动化测试工具和方法做一个专题研究. 第一篇介绍monkey测试工具. 1 自动化测试背景 ...

  7. Android自动化测试学习路线

    最近在整理Android自动化测试的相关资料,大体上把一些知识点梳理了,这里做一个简单的分享! Android里面测试相关的工具和框架太多了.你应该从以下几个方面入手. 编程语言的选择 如果你要学习的 ...

  8. Android 自动化测试框架

    Android常用的自动化测试工具框架: Monkey,MonkeyRunner,UIAutomator,Robotium,Appium,Monkey Talk...... 但这些工具框架都是什么呢有 ...

  9. 133、 Android 自动化测试(转载)

    Android 自动化测试--要点概括http://blog.csdn.net/vshuang/article/details/40595233 A/B测试与灰度发布http://blog.csdn. ...

  10. Android自动化测试探索

    Android自动化测试探索 前言 通常来说,我们开发完成产品之后,都是由测试组或者是我们自己点一点,基本上没有问题了就开始上线.但是,随着时间的堆叠,一款产品的功能也越来越多.这时,我们为了保证产品 ...

随机推荐

  1. reduce()

    from functools import reducea=[10,11,22,33]b=reduce(lambda x,y:x+y,a)<===>sum(a)print(b)

  2. 记录POI导入时单元格下拉框两种实现方式(excel数据有效性)

    如果下拉选项字符少于225 使用方式1 public static HSSFSheet setHSSFValidation(HSSFSheet sheet, String[] textlist, in ...

  3. 1.mysql创建索引

    -- 创建一个普通索引(方式①)create index 索引名 ON 表名 (列名(索引键长度) [ASC|DESC]);-- 创建一个普通索引(方式②)alter table 表名 add ind ...

  4. 【git】2.5远程仓库的使用

    资料来源 (1) https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93% ...

  5. 【git】2.4 撤销操作

    资料来源 (1) https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E6%92%A4%E6%B6%88%E6%93%8D%E4%BD%9C ...

  6. 【git】git子模块操作-从子模块的远端拉取上游修改 & 从项目远端拉取更改

    1.从子模块的远端拉取上游修改 1.1 在项目子模块目录中,运行git fetch与git merge更新本地代码 (1) 这种方法在获取子模块非master分支的更新时,没成功获取更新,没搞清楚原因 ...

  7. mysql 修改字符集相关操作

    修改某个表字段的字符集 ALTER TABLE apply_info MODIFY member_name varchar(128) CHARACTER SET utf8mb4; 查看某个库的字符集类 ...

  8. 修改mysql多个表的相同字段为同一值内容

    mysql将所有数据库的表的相同字段更新为某一值 1.创建存储过程函数名为:proc_update_client_id CREATE PROCEDURE `proc_update_client_id` ...

  9. Flutter statecontroller.update(MaterialState.disabled,false)无效

    因为中间会调用 void initStatesController() { if (widget.statesController == null) { internalStatesControlle ...

  10. ionic 架构

    1.路由:rout,页面内容:html,页面css:scss,js脚本内容:ts 2.功能介绍 路由:负责组织每个页面. 页面css:scss,负责定制每个组件的内容,比如组件是iobag,那么在这个 ...