【移动自动化】【二】Appium
实施自动化需要的工具
adb
- Android控制工具,获取获取Android各种数据和控制,Appium会调起adb命令去执行Android设备
- adb命令参考 https://www.cnblogs.com/totoro-cat/p/9969445.html
Appium Desktop
- 内嵌了Appium Server和Inspector工具,可以帮我分析app
- 下载地址,建议版本不要太高,其实每个版本相差不是特别大
Appium Server
- Appium的核心工具
Appium Clients
- 各种语言的封装库,用于连接appium server
Appium Desktop
安装
从官网下载桌面版本直接安装即可https://github.com/appium/appium-desktop/tags
主要功能
- UI 分析
- 录制用例
- 元素查找测试
- Attach 已有的 session
- 云测试
操作步骤
- appium默认端口4327
- 在启动appium前,先点击edit configuration, 看你的java环境android_home环境是否配置,如果配置好,则appium会自动识别(怎么配置可以看上一篇,也可以自己百度,网上很多)

- 点击start server
- 打开appium server, 我们可以看到当前环境占用4723端口,点击inspection分析

- 在Desired Capabilities输入一下的信息,这些都是必填项的(我这边模拟器已经提前安装了app, 你也可以添加app参数,指定app地址)参数参考地址https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/caps.md
platformName: 需要测试的设备android or ios
deviceName: 这个可以随意命名
appPackage:app包名
appActivity:app启动activity - 点击start session

Appium server安装
- 安装nodejs,LTS版本,版本不能太高,我电脑安装了v12.18.3
root@iZuf6aygpm6zxxzuh3am6vZ:~# node -v
v12.18.3
- 安装Appium,因为特殊原因可能装不上,所以要换淘宝镜像
root@iZuf6aygpm6zxxzuh3am6vZ:~# npm install -g cnpm --registry=https://registry.npm.taobao.org
root@iZuf6aygpm6zxxzuh3am6vZ:~# cnpm install -g appium@1.14.0
root@iZuf6aygpm6zxxzuh3am6vZ:~# appium -v
1.14.0
- 需要python2环境,安装python2
root@iZuf6aygpm6zxxzuh3am6vZ:~# python
Python 2.7.12 (default, Jul 21 2020, 15:19:50)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
4.安装appium-doctor设置adb java android路径, 都出现绿色说明都配置好了,直接输入appium就启动服务了,
root@iZuf6aygpm6zxxzuh3am6vZ:~# npm install -g appium-doctor@1.14.0

简单的测试脚本
- chi/demo_1.py 前提安装依赖pip install Appium-Python-Client
from appium import webdriver
caps = {}
caps["platformName"] = "android"
caps["deviceName"] = "emulator-5554"
caps["appPackage"] = "com.shoumi.shoumi"
caps["appActivity"] = ".activity.startActivity"
caps["autoGrantPermissions"] = True
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", caps)
driver.implicitly_wait(1000)
driver.quit()
【移动自动化】【二】Appium的更多相关文章
- 移动端自动化测试之Appium实战
软件工程的趋势:目前大部分企业的软件研发模式是持续交付,而自动化是持续交付的根基,而且不仅仅是测试要自动化,所有的环节都在自动化,自动化是未来的方向这一点已成为行业共识. 之前咱们已经讲过了AppCr ...
- 2017春 前端自动化(二) 页面自动刷新、sass与css转换的使用、pxToRem直观转换
2017春 前端自动化(二) 页面自动刷新.sass与css转换的使用.pxToRem直观转换 引言: 此文要演示:浏览器页面自动刷新:移动端px与rem的转换,简单直观化:使用sass自动生 ...
- 二 APPIUM Android自动化 环境搭建
1.安装JAVA运行环境 2.安装Android开发环境 3.安装nodejs 下载地址:https://nodejs.org/en/ 下载完成之后双击安装. 4.安装APPIUM,App ...
- 二 APPIUM Android自动化 测试初体验
本文转自:http://www.cnblogs.com/sundalian/p/5629358.html 1.创建一个maven项目 成功新建工程: 编辑pom.xml,在<dependenci ...
- android自动化(appium)
目录 一.Appium环境搭建 1.下载nodejs,并安装 2.下载appium,并安装 3.安装python.安装pip.安装appium 4.安装java的jdk 5.安装andriod的sdk ...
- App 自动化,Appium 凭什么使用 UiAutomator2?
1. UiAutomator2 是什么 可能很多人对 UiAutomator2 和 UiAutomator 傻傻分不清楚 UiAutomator 是 Google 开发的一款运行在 Android 设 ...
- 自动化-Appium
1.手把手教你 Android 标准 APP 的四大自动化测试法宝:https://testerhome.com/topics/5846 2.中文 Appium API 文档:https://test ...
- 自动化:Appium运行成功,取得一个小的胜利
看过乙醇大神的博文,然后又看了一些大神的博文,自己陆陆续续的折腾了一个月,今天上午的时候,appium终于跑起来了.纪念下,在自动化路上取得的一个小胜利 Appium版本:1.2 Python版本:2 ...
- Appium自动化测试之Appium的安装与配置
Appium自动化测试- Appium环境的安装与配置Appium中文文档: https://github.com/appium/appium/tree/master/docs/cn Appium的安 ...
- android自动化之appium的环境搭建
简介appium appium是C/S架构,appium的核心是一个web服务器,它提供了一套REST的接口,他会接收客户端的连接,监听到命令.执行会再将结果通过HTTP响应返还给客户端.ap ...
随机推荐
- ng中的ng-content ng-template ng-container
在angular中,有这样三个自带的标签,但是在angular的文档中没有说明,只有在api中有简单的描述,摸索了半天才搞懂是咋回事. ng-content <div> <ng-co ...
- 接收某项课程id,通过axios发起get请求,由于携带params出现的问题(已解决)
问题:在最新课程页面(NewBook.vue)点击某一项课程,通过传递该课程的 id 跳转至课程详情页(Bookdetail.vue),采取的跳转方式是声明式导航,即 <router-link ...
- Mybatis---04Mybatis配置文件浅析(二)
本文参考:https://www.cnblogs.com/yulinfeng/p/5991170.html 1.typeHandlers:类型处理器,设置预处理语句(PreparedStatement ...
- http接口和web service接口测试区别是什么?
1.web service有一套完整的协议标准,其中有soap协议,用来进行消息的传递. 2.soap请求是HTTP POST的一个专用版本,遵循一种特殊的xml消息格式 Content-type设置 ...
- Charles使用part2——代理设置
一.charles代理原理: 如果本地开了代理: 二.设置代理 1.设置代理端口: proxy->proxy setting 打开代理设置界面,代理端口默认是 8888,可以使用默认也可以自己 ...
- C++代码雨
闲逛的时候发现了一个很好玩的程序 摘自:https://blog.csdn.net/u012837895/article/details/20849967#comments 效果如下 #include ...
- IDEA 搭建 Spark 源码 (Ubuntu)
版本:Spark 2.4.3/JDK 1.8/Scala 2.11.0 1.选择Spark版本.压缩包下载. 2.IDEA中左下角Terminal下输入: mvn -DskipTests clean ...
- Centos中部署NetCore项目(二)
前言 在centos中部署程序,一般都不会是使用控制台进程直接启动,或者是后台运行.而是一些守护进程管理工具进行管理,例如supervisor. 部署Web相关程序,使用nginx是比较普遍的, 安装 ...
- MapReduce在Shuffle阶段按Mapper输出的Value进行排序
ZKe ----------------- 在MapReduce框架中,Mapper的输出在Shuffle阶段,根据Key值分组之后,还将会根据Key值进行排序,因此Reducer的输出我们看到的结果 ...
- php拓展 swoole 安装
1.git clone https://gitee.com/swoole/swoole.git 2.cd swoole 3./usr/local/php7/bin/phpize 4../configu ...