这几天遇到了一个比较奇怪的问题,使用RF框架进行自动化测试的时候定位不到部分元素

并且这个元素的是有id的,更换了xpath定位也行不通,冥思苦想,加上谷歌百度,终于解决了

解决步骤如下:

1、定位问题

首先编写个简单的test.py,用来进行debug

进入包含定位不到元素的页面,打印出pagesource

from appium import webdriver
from time import sleep meizu = {"platformName": "Android", "platformVersion": "7.0", "deviceName": "891QSDU5Q57P9",
"appPackage": "your_app_packagename", "appActivity": ".views.MainActivity"}
driver = webdriver.Remote("http://localhost:4723/wd/hub", meizu)
ss=driver.find_element_by_id('com.android.packageinstaller:id/permission_allow_button')
for i in range(4):
sleep(3)
ss.click()
#print(driver.page_source)
sleep(5)
s2=driver.find_element_by_id('button')
sleep(3)
s2.click() #点击车辆页
# s4=driver.find_element_by_id('xxx')
# s4.click() #点击我的页面
print(driver.page_source)
s3=driver.find_element_by_id('xxxx')
s3.click()

根据需要将部分参数换成你所需要的参数,然后打印出pagesource,打印出来我才发现,打印出来的pagesource根本没有我所需要的元素。

也就说明了我的定位方式是没有问题的,是页面出现了问题。有一层浮层遮挡住了,导致appium无法进行定位(当然,如果这一步打印出的pagesouce里包含你所需要的元素,请进行检查元素的定位的方式是否出错)

2、解决问题

问题其实也比较简单解决,就是安卓6.0以后推荐使用uiautomator2进行定位,问题就很轻松愉快的解决了

npm install appium-uiautomator2-driver

安装完毕,打开appium,在启动参数里添加

"automationName": "uiautomator2"

如果遇见还是打不开,出现奇怪的错误,请用管理员权限打开RIDE和appium试试

appium+robotframework+python连接真机定位不到元素的问题处理的更多相关文章

  1. appium通过WiFi连接真机进行测试

    http://www.th7.cn/Program/Android/201507/514602.shtml appium通过WiFi连接真机进行测试   2015-07-24 19:43:07CSDN ...

  2. python连接真机或模拟器

    前言: 最近写自动化代码的时候,使用模拟器运行 python + appium代码时,APP闪退了,只能使用真机运行代码了.真机要怎么配置设备的信息呢? 怎么配置设备的信息? 配置是使用真机还是模拟器 ...

  3. Appium +Python 连接真机测试

    1.数据线连接电脑和手机: 2.用adb获取手机的UUID:cmd-> adb devices 前面的就是你手机的UUID 3.打开appium,选择手机的安卓版本(关于手机中查看),填写手机的 ...

  4. Python+Appium自动化测试(2)-appium连接真机启动app

    app自动化测试的第一步,是启动被测app.appium环境搭建好后,我们就可以连接真机启动app了.环境为windows,Appium1.18.0,Android手机,被测app为今日头条app,让 ...

  5. Appium 小白从零安装 ,Appium连接真机测试。

    以下是我个人在初次安装使用Appium时的过程,过程中遇到了一些问题,在这里也一一给出解决办法. Appium安装过程 先安装了 Node.js.在node的官网上下载的exe安装文件. 在node的 ...

  6. MAC本上appium连接真机

    简单介绍一下appium连接ios真机测试环境的软件安装及配置过程: 目前我用的是desktop版本的appium, 所以MAC版本必须要升级到10.12以上,Xcode版本必须要在8.0以上,否则亲 ...

  7. 【转】NO.3、python+appium+ios,遍历真机元素,得到webview

    pyhton+appium+iOS,遍历真机webview.是遍历真机的webview,遍历模拟器的webview请另寻方法. 1.mac上安装ios_webkit_debug_proxy 命令:br ...

  8. Appium——连接真机,adb devices获取不到设备号

    连接真机后,使用 adb devices获取不到设备号. 1.检查usb接口是否正常,是否正常链接到电脑 2.手机开发者模式是否开启,usb调试是否开启 3.检查驱动是否正常 4.如果驱动显示黄叹号, ...

  9. APPium连接真机输入框中输入的内容与代码中不一致

    今天解决了上一个问题,又碰到了一个新的问题. 问题:连接真机输入框中输入的内容与代码中不一致. 描述: 想实现登录页面输入用户名和密码自动登录,可是在输入用户名和密码的框中输入的内容总是与代码中的不一 ...

随机推荐

  1. jquery 点击tr选中checkbox,解决checkbox的默认点击事件被阻止的问题

        1.第一种,!$(event.target).is('input'),判断触发事件的元素是否为input.此时使用event.target,而不是this,获取事件本身,防止触发事件冒泡的问题 ...

  2. .NET Core 3.0 Preview 6中对ASP.NET Core和Blazor的更新

    我们都知道在6月12日的时候微软发布了.NET Core 3.0的第6个预览版.针对.NET Core 3.0的发布我们国内的微软MVP-汪宇杰还发布的官翻版的博文进行了详细的介绍.具体的可以关注&q ...

  3. 算法设计与分析——n后问题(回溯法+位运算)

    一.问题描述 在n×n格的国际象棋上摆放n个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行.同一列或同一斜线上,问有多少种摆法. 二.算法设计 解n后问题的回溯算法描述如下: #include ...

  4. java的各种日志框架

    本文是作者原创,版权归作者所有.若要转载,请注明出处.文章中若有错误和疏漏之处,还请各位大佬不吝指出,谢谢大家. java日志框架有很多,这篇文章我们来整理一下各大主流的日志框架, 包括log4j  ...

  5. flex招式心法

    flex布局绝对是我们平常在布局中用的最多的一个属性,我们来看看它在can i use中的浏览器支持度:(截止到2019/11/16) 挖藕,凹森!支持度居然这么好,好到连ie也能支持大部分的flex ...

  6. console 有没有小伙伴跟我一样想知道这个对象呢

    晚上看了会代码,没什么简单又好分享的 -0- 突然想到console这个对象,就把它打印了出来看看吧 ; for(var key in console){ i++; ){ document.write ...

  7. Android Studio的安装及第一次启动时的配置

    Android Studio的安装及第一次启动时的配置 一.下载Android Studio 百度搜索“Android Studio" 点击中文社区进入,选择最新版本下载. 下载后双击安装包 ...

  8. 获取Tekla属性方式

    XmlTextWriter xmlTextWriter = new XmlTextWriter((TextWriter) stringWriter); xmlTextWriter.Formatting ...

  9. JavaScript banner轮播 左右切换 圆点点击切换

    1.效果如下图: 2.源码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

  10. 【问题解决】vim 打开文档后提醒 E325: ATTENTION 怎么办?

    这是经典的 vi/vim 的报错情形. 在 Linux 下,使用 vim 或是 vi 查看文件时,可能每次都会出现下面贴出的 E325 错误提醒,然后按 E 进行 Edit anyway 才能继续读写 ...