手机APP测试环境搭建---appium
这些都不是重点---一切都可以参考虫师
Appium移动自动化测试(一)--安装Appium
1.ADB的安装:ADB(ANDROID DEBUG BRIDGE)
应用场景:
针对移动端 Android 的测试, adb 命令是很重要的一个点,常用的 adb 命令, 将会为 Android 测试带来很大的方便,其
中很多命令将会用于自动化测试的脚本当中
环境搭建:
解压:platform-tools_r28.0.0-windows.zip(adb)和sdk-tools-windows-4333796.zip (tools-UIAutomator)将解压后的路径放置path环境变量
命令⾏输⼊:
adb devices:查看已连接的设备 adb shell wm size
adb kill-server , adb start-server , 结束 adb 服务, 启动 adb 服务,通常两个命令一起用
adb shell pm list package:列出所有的应用的包名
-s:列出系统应用
-3:列出第三方应用
-f:列出应用包名及其安装来源
打开应用查看包名和activity名称:adb shell dumpsys activity top | head -n 10 mac使用命令
2.移动端自动化测试:APPIUM
环境搭建:
1.安装node.js node-v6..zip 将解压后的件添加至path环境变量
2.安装appium。 将 C:\Program Files (x86)\Appium\node_modules\.bin添加至环境变量
或者 :npm install -g appium
淘宝源镜像:npm install -g cnpm --registry=https://registry.npm.taobao.org #Windows
3.配置JAVA_HOME :就是JDK路径
ANDROID_HOME:安卓sdk路径
输入:appium-doctor
All Checks were successful ,说明环境成功
DESIRED CAPABILITIES
Desired Capabilities在启动session的时候是必须提供的。
本质上是key value的对象,它告诉appium server这样一些事情:
1. ▪ 本次测试是启动浏览器还是启动移动设备?
2. ▪ 是启动andorid还是启动ios?
3. ▪ 启动android时,app的package是什么?
4. ▪ 启动android时,app的activity是什么?
C:\Users\ASUS-PC>adb shell
jason:/ $ dumpsys activity | grep mFocusedActivity #Windows查看package和activity----当然还有很多其他方法(百度)
1.导入appium:from appium import webdriver
定义一个字典:desired_cap={
'platformName': 'Android',
'deviceName': ‘8BN0218309004925',
'appPackage': 'com.ximalaya.ting.android',
'appActivity': '.host.activity.MainActivity',
'noReset': 'true', #密码相关,(微信为例)注释掉该段代码,需要输入登录密码,反正不需要登录
'unicodeKeyboard': 'True',
'resetKeyboard': 'True',
}
然后实例化对象:driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_cap)
webdriver.Remote实际上就是原⽣webdriver的子类,第⼀个参数中需要显⽰指定appium server监听的端口
APPIUM定位元素:UIAUTOMATORVIEWER
1. 连接真机或模拟器
2.打开/Users/hejianhao/Library/Android/sdk/tools/bin/uiautomatorviewer
元素定位选择器:
第⼀是ID,
第⼆是class,如果class没有重复
第三是by uiautomator
第四,可能就是xpath
APPIUM定位元素:UIAUTOMATORVIEWER
1. 连接真机或模拟器
2.打开/Users/hejianhao/Library/Android/sdk/tools/bin/uiautomatorviewer
id:
driver.find_element_by_accessibility_id(‘Animation’)
加个s返回list:driver.find_elements_by_accessibility_id(‘Animation’)
description
:driver.find_element_by_android_uiautomator('new UiSelector().description(“Animation")')
Xpath:
://android.widget.TextView[@text=‘经典必听’]
Tag_name
:driver.find_element_by_tag_name('button')
手机APP测试环境搭建---appium的更多相关文章
- 手机APP自动化环境搭建
1 摘要 近年来,随着移动应用从数量上和逻辑复杂程度上的增长,以及产品发布周期的紧缩,使得回归测试迫在眉睫,鉴于此APP自动化测试变得越来流行,当前主流的APP自动化工具有:Appium.Roboti ...
- app测试环境搭建(python)
app测试环境的搭建大致如下几个: 1.appium安装 appium-server或者使用appium-desktop都可以,前者已经不再更新 下载地址:appium.io 2.Android SD ...
- 『与善仁』Appium基础 — 14、Appium测试环境搭建
目录 1.Appium测试环境搭建整体思路 (1)Android测试环境搭建 (2)Appium测试环境搭建 (3)测试脚本语言的环境搭建 2.Appium在Android端和IOS端的工作流程 (1 ...
- 【转2】Appium 1.6.3 在Xcode 8 (真机)测试环境搭建 经验总结
Appium 1.6.3 在Xcode 8 (真机)测试环境搭建经验总结 关于 Appium 1.6.3 在Xcode 8, 1真机上环境搭建问题更多,写此文章,供大家参考,让大家少走弯路. 在开始i ...
- 【转1】Appium 1.6.3 在Xcode 8, iOS 10.2(模拟器)测试环境搭建 经验总结
Appium 1.6.3 在Xcode 8, iOS 10.2(模拟器)测试环境搭建 经验总结 关于 Appium 1.6.3 在Xcode 8, 10.2 的iOS模拟器上的问题很多,本人也差点放弃 ...
- JM-1 手机网站开发测试环境搭建
JM-1 手机网站开发测试环境搭建 一.总结 一句话总结:WEB服务器环境可实现局域网内轻松访问.360wifi可以实现局域网. 二.微网站开发环境: 1.把微网站放到本机wamp环境下,用pc浏览器 ...
- 『与善仁』Appium基础 — 1、Android系统的测试环境搭建
目录 1.Android操作系统简介 (1)Android系统诞生 (2)Android系统的结构 (3)Android测试环境搭建整体思路 2.Java环境安装 (1)JDK8下载 (2)安装JDK ...
- 手机APP测试
注:以下内容来自网络: 一.手机APP测试类型 1.1 接口协议测试 在APP客户端开发设计时,一般服务端会提供相应的接口协议文档,接口协议文档的质量,决定了APP的开发进度.此部分的测试,应首先检测 ...
- 手机APP测试——Perfecto
基于 Perfecto mobile cloud 的移动端自动化测试实践 本文将介绍 Pefecto mobile cloud 在移动端自动化测试的应用. Pefecto 将真实移动设备放到 clou ...
随机推荐
- MySQL协议分析(1)
MySQL协议分析 此阶段的协议分析是在未压缩未加密情况下的协议分析 思路: 结合Oracle官网和自己用wireshark抓的网络数据包进行协议分析 官网说明 mysql包共分为4段,格式如下: 第 ...
- 不受路径限制的 HALCON开发环境, 并且初始化两个Picture控件;
知识储备: http://bbs.csdn.net/topics/391829463 关于 添加第三方库的方式 http://www.ihalcon.com/read-3730.html VS ...
- css选择器中间的空格
div p div标签下 的p标签 (后代) div .a div 的后代类属性有a的 div.a 类属性有a的div标签 div.a1.a2 多类选择器 类包含a1,a2的div标签 div.a1 ...
- 参数或变量中有语法错误。 服务器响应为: mail from address must be same as authorization user
企业qq发邮件失败,提示: 参数或变量中有语法错误. 服务器响应为: mail from address must be same as authorization user 解决办法: 登录邮箱,设 ...
- DevStore分享:月薪3万的程序员都避开了哪些坑
程序员薪水有高有低,有的人一个月可能拿30K.50K,有的人可能只有2K.3K.同样有五年工作经验的程序员,可能一个人每月拿20K,一个拿5K.是什么因素导致了这种差异?我特意总结了容易导致薪水低的九 ...
- cdoj1587 失恋772002天
地址:http://acm.uestc.edu.cn/#/problem/show/1587 题目: 失恋772002天 Time Limit: 3000/1000MS (Java/Others) ...
- $聊一聊"驼峰"和"下划线"——Python re.sub函数详细用法实例讲解
日常写代码时候会遇到一些字符串替换的操作,比如把一大堆"驼峰"形式的字符串批量转换成下划线形式."驼峰"形式的变量命名风格在Java中很常见,而下划线形式的变量 ...
- Spring MVC 复习笔记01
1. springmvc框架 1.1 什么是springmvc spring mvc是spring框架的一个模块,springmvc和spring无需通过中间整合层进行整合.spring mvc是一个 ...
- 【c++ primer, 5e】返回类型和return语句
[无返回值函数] 1.在c++的void函数中,可以显式地使用return;语句来提前结束函数的调用. [有返回值函数] 1.值是如何被返回的:返回一个值的方式和初始化一个变量或者形参的方式完全一样. ...
- hadoop cgroup+container配置
配置container-executor.cfg vim etc/hadoop/container-executor.cfg yarn.nodemanager.linux-container-exec ...