这些都不是重点---一切都可以参考虫师  

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的更多相关文章

  1. 手机APP自动化环境搭建

    1 摘要 近年来,随着移动应用从数量上和逻辑复杂程度上的增长,以及产品发布周期的紧缩,使得回归测试迫在眉睫,鉴于此APP自动化测试变得越来流行,当前主流的APP自动化工具有:Appium.Roboti ...

  2. app测试环境搭建(python)

    app测试环境的搭建大致如下几个: 1.appium安装 appium-server或者使用appium-desktop都可以,前者已经不再更新 下载地址:appium.io 2.Android SD ...

  3. 『与善仁』Appium基础 — 14、Appium测试环境搭建

    目录 1.Appium测试环境搭建整体思路 (1)Android测试环境搭建 (2)Appium测试环境搭建 (3)测试脚本语言的环境搭建 2.Appium在Android端和IOS端的工作流程 (1 ...

  4. 【转2】Appium 1.6.3 在Xcode 8 (真机)测试环境搭建 经验总结

    Appium 1.6.3 在Xcode 8 (真机)测试环境搭建经验总结 关于 Appium 1.6.3 在Xcode 8, 1真机上环境搭建问题更多,写此文章,供大家参考,让大家少走弯路. 在开始i ...

  5. 【转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模拟器上的问题很多,本人也差点放弃 ...

  6. JM-1 手机网站开发测试环境搭建

    JM-1 手机网站开发测试环境搭建 一.总结 一句话总结:WEB服务器环境可实现局域网内轻松访问.360wifi可以实现局域网. 二.微网站开发环境: 1.把微网站放到本机wamp环境下,用pc浏览器 ...

  7. 『与善仁』Appium基础 — 1、Android系统的测试环境搭建

    目录 1.Android操作系统简介 (1)Android系统诞生 (2)Android系统的结构 (3)Android测试环境搭建整体思路 2.Java环境安装 (1)JDK8下载 (2)安装JDK ...

  8. 手机APP测试

    注:以下内容来自网络: 一.手机APP测试类型 1.1 接口协议测试 在APP客户端开发设计时,一般服务端会提供相应的接口协议文档,接口协议文档的质量,决定了APP的开发进度.此部分的测试,应首先检测 ...

  9. 手机APP测试——Perfecto

    基于 Perfecto mobile cloud 的移动端自动化测试实践 本文将介绍 Pefecto mobile cloud 在移动端自动化测试的应用. Pefecto 将真实移动设备放到 clou ...

随机推荐

  1. jquery插件开发快速入门

    1.添加jQuery对象方法添加jQuery对象方法:jQuery.prototype.myMethod. 在jQuery源码中有一句:jQuery.fn = jQuery.prototype,也就是 ...

  2. APIENTRY

    1.在widnows编程中int APIENTRY WinMain中APIENTRY是什么意思,其什么作用? winapi表示此函数是普通的winapi函数调用方式,apientry则表明此函数是应用 ...

  3. Java网络通信基础编程

    一.同步阻塞方式(BIO) 方式一: 服务器端(Server): package com.ietree.basicskill.socket.mode1; import java.io.IOExcept ...

  4. Linux文件权限分析

    一.用户组概念  在linux系统中,每个用户必属于一个组,不能独立于组之外.每个文件都有所有者,所在组和其他组这三个概念. (1)所有者:一般为文件的创建者,谁创建了该文件,就成为了该文件的所有者, ...

  5. ACM-ICPC 2018 徐州赛区网络预赛 G. Trace (set维护)

    注意题目保证不会有一个矩形完全包括另一个矩形的情况 时间序上从后往前看,一个坐标\((x,y)\)加进来之前,如果已经有\(x_i<x\),则对结果的贡献为\(x-x_i\);若不存在\(x_i ...

  6. [转]将oracle数据库的编码变成utf-8

    1.改客户端字符集:通过WINDOWS的运行菜单运行Regedit,修改注册表 Start -> Run -> Rededit <-| Under registry Editor - ...

  7. 20145312 《Java程序设计》第三周学习总结

    20145312 <Java程序设计>第三周学习总结 学习笔记 Chapter 4 4.1类与对象 4.1.1 定义类 1.以服饰设计为例,类定义用class关键词,建立衣服实例要用new ...

  8. Java学习笔记-方法引用

    方法引用(Method Reference) 上一篇中记录了Lambda表达式,其可以创建匿名方法.当Lambda表达式只是调用一个存在的方法时,可以采用方法引用(JDK8具有的特性).如下: pub ...

  9. delegate委托

    https://www.cnblogs.com/leicao/p/5251090.html 委托是一种存储函数引用的类型,在事件和事件的处理时有重要的用途 通俗的说,委托是一个可以引用方法的类型,当创 ...

  10. 聊一聊HTML <!--…-->标签

    定义 注释标签用于在html源代码中插入注释.注释不会在浏览器上显示. 用法 根据定义的基本用法,代码如下 <!-- 这是一段注释,我不会显示在页面上 --> 浏览器的支持情况 所有浏览器 ...