appium1.7的使用
1、安装成功后,双击图标启动appium

2、输入host:0.0.0.0 ,port:4723,点击start server,启动appium,如下图所示,启动成功

3、点击搜索图标,打开定位工具Inspector,Start Inspector Session

4、Desired Capabilities,输入设备信息,或者编辑json文件,点击另存为,保存该设备信息

{
"platformName": "Android",
"deviceName": "GSL0217302005195",
"platformVersion": "8.0.0",
"appPackage": "com.tencent.mm",
"appActivity": "com.tencent.mm.ui.LauncherUI",
"noReset": true
}
platformName:平台名称,Android或IOS
deviceName:手机设备名称,通过adb命令获取,adb devices
platformVersion:手机系统版本
appPackage:APP的包名
appActivity:APP的Activity
noReset:true不重新安装APP,false重新安装APP
5、点击Sart Session,打开指定APP开始定位元素

获取APP包名命令:
不带任何选项:列出所有的应用的包名
adb shell pm list package
-s:列出系统应用
adb shell pm list package -s
-3:列出第三方应用
adb shell pm list package -3
-f:列出应用包名及对应的apk名及存放位置
adb shell pm list package -f
-i:列出应用包名及其安装来源
adb shell pm list package -i
结果显示例子:
package:com.zhihu.android installer=com.xiaomi.market
命令最后增加 FILTER:过滤关键字,可以很方便地查找自己想要的应用
参数组合使用,例如,查找三方应用中知乎的包名、apk存放位置、安装来源:
[xuxu:~]$ adb shell pm list package -f -3 -i zhihu
package:/data/app/com.zhihu.android-1.apk=com.zhihu.android installer=com.xiaomi.market
pm path 列出对应包名的 .apk 位置
[xuxu:~]$ adb shell pm path com.tencent.mobileqq
package:/data/app/com.tencent.mobileqq-1.apk
pm list instrumentation , 列出含有单元测试 case 的应用,后面可跟参数 -f (与 pm list package 中一样),以及 [TARGET-PACKAGE]
pm dump , 后跟包名,列出指定应用的 dump 信息,里面有各种信息,自行查看
adb shell pm dump com.tencent.mobileqq
命令行窗口获取当前运行的Activity命令:
adb shell dumpsys activity | findstr -i run
adb命令微博推荐:https://www.cnblogs.com/bravesnail/articles/5850335.html
获取activity微博推荐:https://blog.csdn.net/hty1053240123/article/details/54312614
注:
appium1.5以后,不支持name定位
但是可以用text定位方式,如driver.findElementByAndroidUIAutomator("text(\"6\")"),但是driver不能是appium driver,只能改成 Android driver
appium1.7的使用的更多相关文章
- Appium0.18.x迁移到Appium1.x须知事项(灰常实用,解答了本人几个疑问)
英文原版:https://github.com/appium/appium/blob/master/docs/en/advanced-concepts/migrating-to-1-0.md Migr ...
- Appium0.18.x迁移到Appium1.x须知事项
英文原版:https://github.com/appium/appium/blob/master/docs/en/advanced-concepts/migrating-to-1-0.md Migr ...
- 基于Appium1.6.X的WebDriverAgent编译、安装
转自:http://www.cnblogs.com/baconLiu/p/6861431.html tips:WebDriverAgent是Appium1.6.3以后版本新添加的模块,为了让appiu ...
- Appium1.6 定位iOS元素和操作元素
元素定位方式 第一种:通过Appium1.6的Inspector来查看 具体安装方式前面的随笔已经介绍了:http://www.cnblogs.com/meitian/p/7360017.html ...
- Appium1.6启动iOS真机
前提:已经安装了Appium1.6版本,我这里用的是GUI版本 环境要求: 真机iOS9.3及以上 macOS 10.11或10.12 Xcode7及以上 安装步骤如下 第一步:iOS真机 ...
- Appium1.6 GUI界面介绍
Appium1.6安装详见随笔:http://www.cnblogs.com/meitian/p/7360017.html 下面具体介绍一下GUI界面 1.appium server配置页面 2. ...
- Appium1.6,安装WebDriverAgent(WDA)
前提说明:Appium1.6通过WebDriverAgent来操作iOS,所以需要在Appium下安装一份WebDriverAgent,并且将程序安装到iOS真机上 (如果是模拟器不需要这步骤) ...
- Appium 教您完美win10安装Appium1.7.2支持win客户端自动化
参考内容: https://testerhome.com/topics/10193https://testerhome.com/topics/8223https://testerhome.com/to ...
- 使用appium1.4在android8.0真机上测试程序时报错command failed shell "ps 'uiautomator'"的解决方式
appium1.4,运行自动化脚本时提示 org.openqa.selenium.SessionNotCreatedException: A new session could not be crea ...
随机推荐
- tensorflow报错
libcublas.so.9.0: cannot open shared object file: No such file or directory 输入命令: sudo ldconfig/usr/ ...
- 解决PageHelper.startPage(page, size)后,关于PageInfo的total等属性不正确等问题
在解决PageHelper.startPage(page, size);的位置问题后,又遇到total等信息错误,主要还是不细心,两个不同的List实例化进PageInfo,不能混在一起,同时要确保这 ...
- Dictonary(Python)(一)
基本用法: .keys .values .items >>> D = dict(a=1,b=2,c=3) >>> D {'a': 1, 'b': 2, 'c': 3 ...
- 分布式存储Ceph之PG状态详解
https://www.jianshu.com/p/36c2d5682d87 1. PG介绍 继上次分享的<Ceph介绍及原理架构分享>,这次主要来分享Ceph中的PG各种状态详解,PG是 ...
- java html生成图片html2canvas,Canvas2Image
<html> <div id="pic" style="margin-left: 500px;position:fixed;opacity:0;&quo ...
- 52、saleforce 第一篇
View the Schema 1.点击setup 2.在QuickFind and Search中输入Schema Builder 先点击clear all 去除所有现实的UML,然后选择Line_ ...
- spring+freemarker 乱码解决办法
这样应该可以了~ <!-- freemarker config --> <bean id="freemarkerConfig" class="org.s ...
- C++——右值引用
1.绑定到一个将要销毁的右值的引用——移动 2.左值表达式——对象的身份:右值表达式——对象的值 ; int& r=i; int&& rr=i;//×,左值不能绑定到右值引用 ...
- activiti7流程实例启动
package com.zcc.acvitivi; import org.activiti.engine.ProcessEngine;import org.activiti.engine.Proces ...
- Java内部类类型
可以在类中的任何位置定义内部类,并在其中编写Java语句.有三种类型的内部类. 内部类的类型取决于位置和声明的方式. 成员内部类 局部内部类 匿名内部类 成员内部类 成员内部类在类中声明的方式与声明成 ...