让新版appium支持by_name定位】的更多相关文章

org.openqa.selenium.InvalidSelectorException: Locator Strategy 'name' is not supported for this session 1. 换其他定位方式,比如用xpath代替 2.不用换定位方式不用换之前脚本的方法来完成无缝升级appium版本的定位方式 修改源码解决问题,修改方法如下: 修改路径: C:\Users\Administrator\AppData\Roaming\npm\node_modules\appiu…
查找路径:appium-desktop\resources\app\node_modules\appium\node_modules\appium-android-driver\build\lib 修改文件:driver.js 只需要修改其中一行即可 this.locatorStrategies = [‘xpath‘, ‘id‘, ‘class name‘, ‘accessibility id‘, ‘-android uiautomator‘,‘name‘];--------再此行代码中添加上n…
appium版本在1.5以后就不再支持ByName的定位,本文章仅介绍在appium1.6.3/1.6.4/1.6.5版本下如何支持ByName定位,适用于安卓.在使用appium1.5之后的版本时,你一定见过这个错误 org.openqa.selenium.InvalidSelectorException: Locator Strategy 'name' is not supported for this session 是否很心痛,曾经的定位神器居然ByName居然不再支持了,那我以前的脚本…
org.openqa.selenium.InvalidSelectorException: Locator Strategy 'name' is not supported for this session 1. 换其他定位方式,比如用xpath代替 2.不用换定位方式不用换之前脚本的方法来完成无缝升级appium版本的定位方式 修改源码解决问题,修改方法如下: 修改路径: C:\Users\lili\AppData\Local\Programs\appium-desktop\resources…
前言: 最近在做IOS自动化测试,IOS的Appium环境都配置OK,执行起来真的慢,慢到怀疑人生,那么今天就来总结一下IOS定位方式和各个定位方式的速度排序. 据我观察,按查找元素的顺序速度,从快到慢的顺序如下: ios_predicate >> accessibility_id >> class_name >>xpath 注⚠️:(论坛比较多的说法是class_name>>accessibility_id,在这里我们姑且认为它们的速度是一样的.) 1.元…
1.id定位 写法:driver.find_element_by_id("这里是resource-id") 2.name定位 name定位就是通过UI Automator工具查看的text属性(注意:appium1.5以下老的版本是可以通过name定位的,新版本从1.5以后都不支持name定位了)  写法:driver.find_element_by_name("上图的text") 3.xpath定位     appium 1.5以上的版本不能使用name定位,但是…
无论是selenium还是appium,元素定位都是我们开始实现自动化面临的第一个问题.selenium还好,我们可以在浏览器的调试页面进行元素定位还是蛮方便的.那么appium怎么做呢? 我看到很多资料,帖子都是说的appium自带的Inspector这个工具进行的元素定位.而笔者不知道是电脑还是什么的问题,这个工具是无法使用的.今天给大家说的是另一个工具. uiautomatorviewer 这个工具是在我们Android的SDK的tools的文件夹里面的.使用方法也很简单.这里我以安卓模拟…
让IE下支持固定定位 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&qu…
appium 使用findElementByAndroidUIAutomator 定位元素示例 import io.appium.java_client.remote.MobileCapabilityType; import io.appium.java_client.remote.MobilePlatform; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.openqa.se…
转自:http://www.elecfans.com/iot/779658.html 根据我国无线电管理相关要求,明确NB-IoT系统基站应到到属地无线电管理机构办理设台审批,领取无线电台执照.同时,根据台站共存技术条件,对800MHz和900MHz频段NB-IoT系统基站的设置提出了具体要求. 频率是800MHz和900MHz,看图就知道使用范围.大概相当于3G信号的频率,4G信号的频率要达到2000MHz,频率越高,波长越短,传输距离越短,也就是为何远离基站的手机没有4G信号,却有2G信号的…
APPIUM Android 定位方式   1.定位元素应用元素 1.1通过id定位元素 Android里面定位的id一般为resrouce-id: 代码可以这样写: WebElement element = driver.findElement(By.id("com.tencent.mm:id/do")); 或者: driver.findElementById("com.tencent.mm:id/do") 下面的例子展示的是通过id定位到元素并点击: @Test…
appium 支持4.2以上的版本 2.3-4.1的版本的支持通过Selendroid实现…
Appium 的xpath定位 1.如果元素text是唯一的,可以通过text文本定位 //*[@text=’text文本属性’] # 定位text driver.find_element_by_xpath("//*[@text='扫一扫']").click() 2.如果元素id是唯一的,也可以id属性定位 //*[@resource-id=’id属性’] # 定位 resource-id driver.find_element_by_xpath("//*[@resource…
IE6浏览器不支持固定定位(position:fixed)解决方案   来源:互联网 作者:佚名 时间:12-04 10:54:05 [大 中 小] 点评:有些朋友在进行网页布局时,会遇到IE6浏览器不支持固定定位(position:fixed),本文将详细介绍此问题的解决方法,需要了解的朋友可以参考下   今天在学习的时候,突然发现在IE6浏览器下,position:fixed不管用了: 复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML…
原文:C# WPF 歌词控件(支持逐字定位描色效果) 之前做了一个模仿网易云歌词的控件,实现了加载网易云歌词并能随音乐播放进度定位歌词.今天呢将在这个控件的基础上增加逐字定位描色功能,如下图效果(QQ音乐PC)所示: 我所使用的实现方法很简单粗暴,把每句歌词每个字切开,单独显示在一个描色的控件中,然后拼成一行完整的歌词,随音乐播放进度去找相应的字进行描色. 而最重要的描色功能是怎么实现的呢? 答案是:使用ClipToBounds属性 当控件ClipToBounds属性为TRUE时,超出控件范围的…
如果你还想从头学起Appium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1693896.html 前言 前面介绍过根据id,classname, accessibilityid,xpath来定位元素,其他这些方法底层都是利用了 UI Automator 的 API 功能实现的 UI Automator 介绍 UI Automator 测试框架提供了一组 API 来构建 UI 测试,用于在用户应用和系统应用中执行交互 利用 UI…
说在前面 1.https://github.com/appium/python-client/tree/master/test  里面有一些test ,可以看看,研究研究 2.学会使用 uiautomatorviewer 和 hierarchyviewer  ,这两个工具可以帮助查看app一些信息,非常好用,在android-tools下 控件的特征就是控件的属性,所以我们可以根据控件的特征进行定位 PS:断言部分之后再细说 1.find_elements_by_accessibility_id…
代码如下: public static void main(String[] args) {         try {             AndroidDriver driver;                             DesiredCapabilities cap=new DesiredCapabilities();                                cap.setCapability("automationName", &quo…
原文:http://www.cnblogs.com/cnkemi/p/9180525.html appium也是以webdriver为基的,对于元素的定位也基本一致,只是增加一些更适合移动平台的独特方式,下面将着重介绍xpath方法,这应该是UI层元素定位最强大的方法啦! 以淘宝app为例,定位左上角扫一扫按钮 1.如果元素text是唯一的,可以通过text文本定位 //*[@text=’text文本属性’] # 定位text driver.find_element_by_xpath("//*[…
在用appium-desktop-setup-1.6.2进行app手势密码设置时,发现move_to(x, y)相对偏移量的方法用不了,绘制的手势也是乱跑 还会抛一个错误 selenium.common.exceptions.InvalidCoordinatesException: Message: Coordinate [x=-210.0, y=210.0] is outside of element rect: [0,0][720,1280] 代码如下 from appium import…
使用uiautomatorviewer.bat工具来找到属性定位元素,在SDK的tools目录下找到该工具,双击打开.左边框内展示app的界面元素,右上角框内展示元素的层级关系,右下角框内展示元素的属性. 1.使用id定位元素 resource-id代表id属性,使用方法: driver.findElement(By.id("com.android.calculator2:id/digit5")).click();//点击5 2.使用name定位元素 text代表name属性,使用方法…
前言 上一篇介绍uiautomator的定位方式都是类似这种'new UiSelector().xxx("xxx")',看起非常长,我也记不住,这很不python.于是本篇优化了定位方法,去掉该死的'new UiSelector().' 组合定位 1.一般组合用id,class,text这三个属性会比较好一点,其次description这个属性也可以一起两两组合 2.id与text属性组合 # 1.id+text id_text = 'resourceId("com.baid…
前言 appium就是封装android的uiautomator这个框架来的,所以uiautomator的一些定位方法也可以用 text 1.通过text文本定位语法 new UiSelector().text("text文本") 2.文本比较长的时候,可以用textContains模糊匹配,只要文本包含匹配内容就可以了. new UiSelector().textContains("包含text文本") 3.textStartsWith是以某个文本开头的匹配 ne…
转自:http://www.2cto.com/kf/201410/340345.html AppiumDriver的各种findElement方法的尝试,尝试的目标应用是SDK自带的Notepad应用. 1. findElementByName 1.1 示例 ? 1 2 el = driver.findElementByName("Add note"); assertThat(el.getText(),equalTo("Add note")); 1.2 如何获得Na…
from appium.webdriver.common.touch_action import TouchActionfrom appium import webdriverimport timeimport os desired_caps = { "platformName":"Android", "platformVersion":"9", "deviceName":"4871660c&qu…
# coding:utf-8from appium import webdriverfrom time import sleep desired_caps = { 'platformName': 'Android', 'deviceName': '127.0.0.1:62001', 'platformVersion': '5.1.1', 'appPackage': 'com.baidu.yuedu', 'appActivity': 'com.baidu.yuedu.splash.SplashAc…
RF中使用 name定位 报错提示: Locator Strategy 'name' is not supported for this session 解决: 1.打开本地文件 driver.js (路径:C:\XXXXX\appium-desktop\resources\app\node_modules\appium\node_modules\appium-android-driver\build\lib) 2.查找 this.locatorStrategies = ['xpath', 'i…
RF中使用 name定位 报错提示: Locator Strategy 'name' is not supported for this session 解决: 1. 打开本地文件 driver.js (路径:C:\XXXXX\appium-desktop\resources\app\node_modules\appium\node_modules\appium-android-driver\build\lib) 2. 查找 this.locatorStrategies = ['xpath',…
Appium Desktop除了可以做Server之外还可以进行元素定位和脚本录制功能,点击放大镜按钮,进入页面设置.开始配置Desired Capabilities. 配置Desired Capabilities可以通过左边逐条输入,右边的Json框会自动输入,也可以通过右边的Json框输入,点击输入框右上角的保存,左边会自动录入Json框的全部信息. 只有当两侧的信息都输入成功,才能进行另存为,运行session. 可以将配置结果另存为(这里另存为CalculatorApp),下次启动就不再…
运行自动化代码,appium返回Could not parse UiSelector argument: 'XXX' is not a string,其中的xxx就是定位的元素 解决方案:外侧用 '' (单引号) ,里面的字符串用 " " (双引号) 参考: https://blog.csdn.net/qq544649790/article/details/83960311…