aapium选择操作元素

Appium自动化

选择界面元素

操作元素

  点击

  拖拽

  发送值

  获取属性

根据appium获取的数据进行分析处理

总和能力:跟编程语言基础、领域的知识有关例如通信系统的协议结合、选择元素、操作元素(编程基础相当于内功、其他知识相当与外功,只有内外兼修才能把自动化工作做好)

Appium的webdriver继承selenium中的webdriver

from appium import webdriverimport time,traceback

desired_caps = {}desired_caps[‘platformName‘] = ‘Android‘ # 平台desired_caps[‘platformVersion‘] = ‘8.0.0‘ # 系统版本desired_caps[‘deviceName‘] = ‘192.168.161.101:5555‘# desired_caps[‘app‘] = r‘C:\Users\Administrator\Downloads\toutiao.apk‘ #app的包地址desired_caps[‘appPackage‘] = ‘io.manong.developerdaily‘ #获取报名  使用sdk中aapt工具  aapt dump badging XX.apk  > D:a.txt &&
D:a.txt重定向到一个文件中并且打开 adb 查看所有安装的包  pm list pckages
desired_caps[‘appActivity‘] = ‘io.toutiao.android.ui.activity.LaunchActivity‘  #应用的启动界面desired_caps[‘unicodeKeyboard‘]  = True #如果自动化中需要输入中文就要设置这个参数为Truedesired_caps[‘resetKeyboard‘]  = True #设置完之后,程序结束输入法还原原来的设置desired_caps[‘noReset‘] = True #不会重置应用,不设置的时候就会需要重复登陆  如果需要测试重复登陆 在框架中程序结束设置退出desired_caps[‘newCommandTimeout‘] = 6000 #当自动化程序和appium通讯发命令,如果过了一段时间没有发送命令就会发送失败 ,这个时间就是设置的超时时间  #启动Remote RPCdriver = webdriver.Remote(‘http://localhost:4723/wd/hub‘, desired_caps)  #和appniumserver创建连接

使用模拟器拖拽安装apk时候报错如下图

解决办法:去网上下载一个Genymotion-ARM-Translation_v1.1.zip

然后拖拽到模拟器中,

进入genymotion自带的adb.exe文件夹下,执行adb shell flash-archive.sh /sdcard/Download/Genymotion-ARM-Translation_v1.1.zip

执行成功如下图

然后关闭模拟器,重新启动,拖拽安装即可

备注apk的名字改成英文.apk

如果还不能解决问题,就去genymotion中换一个模拟器执行以上操作

参考解决办法文档:https://blog.csdn.net/SkipperKevin/article/details/70885620

https://blog.csdn.net/maplelove1211/article/details/77274833

(倒腾了4个小时 各种百度 心累)



原文地址:https://www.cnblogs.com/xiao-qing/p/9415825.html

时间: 2024-10-07 17:57:32

aapium选择操作元素的相关文章

选择操作元素

$():使用选择器选择DOM元素并创建新的DOM元素 一.选择将被控制的元素 $(选择器,'该操作的上下文') 上下文参数可以是DOM元素的引用,也可以是包含jQuery选择器的字符串,或者是DOM树的一个子集.                                     基础CSS选择器 *                           匹配所有元素 E                           匹配标签名为E的所有元素 E F                   

操作元素

一.使用元素属性和特性 属性是javascript对象的内在性质,每个属性都包含名称和值. 特性不是javascript的原生概念,它只适用于DOM元素.特性是用于描述DOM元素标记中设定的值. 设置图片元素的src特性为image.gif,会导致src属性被设置为图片的绝对URL. 大部分情况下属性名称和特征名称一样,但class特性对应的属性名是className. 1.操作元素属性 □  数组索引   $(whatever)[n] □  get方法,通过索引返回单个元素,或者toArray

STL中慎重选择删除元素的方法

 一.要删除容器中有特定值的所有对象 1.如果容器是vector.string或deque,则使用erase-remove习惯用法.例如: vector<int> c; c.erase(remove(c.begin(),c.end(),1963),c.end());//删除值是1963的元素 下面讲一下算法remove: template<classForwardIterator,class T> ForwardIteratorremove(ForwardIterator fi

Day57:操作元素(事件、属性、循环、文档处理)

一.操作元素(属性.CSS.文档处理) 1.事件 1.1 页面载入 ready(fn) // 当DOM载入就绪可以查询及操纵时绑定一个要执行的函数. $(document).ready(function(){}) -----------> $(function(){}) 1.2 事件绑定 //语法: 标签对象.事件(函数) eg: $("p").click(function(){}) 1.3 事件委派 $("").on(eve,[selector],[data

Day 55(08/15)jquery 操作元素(属性,css,文档处理)

四 操作元素(属性,css,文档处理) 4.1 事件 页面载入 1 2 ready(fn)  // 当DOM载入就绪可以查询及操纵时绑定一个要执行的函数. $(document).ready(function(){}) -----------> $(function(){}) 事件绑定 //语法: 标签对象.事件(函数) eg: $("p").click(function(){}) 事件委派: $("").on(eve,[selector],[data],fn

JQuery快速入门-操作元素的属性和样式

我们在学习JavaScript时,详细介绍了DOM对象.从DOM树可以得知,对DOM的操作,主要包括:元素的属性.内容.值.CSS. 一.元素属性的操作 在 jQuery 中,可以对元素的属性执行获取.设置.删除的操作,通过 attr() 方法可以对元素属性执行获取和设置操作,而 removeAttr() 方法则可以轻松删除某一指定的属性. 1.获取元素属性 //JavaScript脚本 <script type="text/javascript"> $(function(

条目九《慎重选择删除元素的方法》

慎重选择删除元素的方法 不同容器删除元素的方法是有区别的. 对于删除容器里的一个元素 序列容器( string, vector, deque)最高效的方法是erase-remove. list最高效的方法是remove. 关联容器没有remove成员函数,只有erase,直接用erase函数来删除元素. 若删除容器里符合一个判别式的元素: 序列容器( string, vector, deque)最高效的方法是erase-remove_if. list最高效的方法是remove_if. 关联容器的

Selenium(八):其他操作元素的方法、冻结界面、弹出对话框、开发技巧

1. 其他操作元素的方法 之前我们对web元素做的操作主要是:选择元素,然后点击元素或者输入字符串. 还有没有其他的操作了呢?有. 比如:比如鼠标右键点击.双击.移动鼠标到某个元素.鼠标拖拽等. 这些操作,可以通过Selenium提供的ActionChains类来实现. ActionChains类里面提供了一些特殊的动作的模拟,我们可以通过 ActionChains 类的代码查看到,如下所示: 我们以移动鼠标到某个元素为例. 百度首页的右上角,有个更多产品选项,如下图所示: 如果我们把鼠标放在上

11-js操作元素

js操作HTML的元素属性: <html> <head> <title>js操作HTML的元素属性</title> <meta charset="UTF-8"/> <!-- js操作HTML元素属性学习: 获取元素对象 操作元素属性 获取: 元素对象名.属性名//返回当前属性的属性值.----固有 元素对象名.getAttribute("属性名");//返回自定义属性的值-----自定义 修改 元素对