hzxuanyou.0tkd.com hzxuanyou.hkaba-wa.com hzxuanyou.2mgt.com hzxuanyou.okcupis.com hzxuanyou.f5g1.com hzxuanyou.amcba.com hzxuanyou.itolab.net hzxuanyou.oursusu.com hzxuanyou.juanpizhan.com hzxuanyou.summerinla.com hzxuanyou.nashihou.com hzxuanyou.armorpools.com hzxuanyou.scaant.com hzxuanyou.canopyred.com hzxuanyou.tomi-tax.com hzxuanyou.dietskn.com hzxuanyou.pdnfull.com hzxuanyou.hostvis.net hzxuanyou.sinomit.com hzxuanyou.dsa.com hzxuanyou.attitrade.com hzxuanyou.xuthanh.com hzxuanyou.jxcamera.com hzxuanyou.yanjiaopingan.com hzxuanyou.makeup-recruit.com hzxuanyou.pdimsa.com hzxuanyou.isi-bw.com hzxuanyou.yjwjd.com hzxuanyou.swdates.com hzxuanyou.kiss52099.com hzxuanyou.mmbmwtc.com hzxuanyou.ex3k.com hzxuanyou.gf6n.com hzxuanyou.xiaofenghui.com hzxuanyou.jiahuaapp.com
0530-3433334

网站建设 APP开发 小程序

知识

分享你我感悟

您当前位置>首页 >> 知识 >> 软件开发

Web自动化的大门到达“犯罪现象”-侦破架构、环境安装及常用元素定位方法

发表时间:2023-09-19 16:00:35

文章来源:炫佑科技

浏览次数:138

菏泽炫佑科技

Web自动化的大门到达“犯罪现象”-侦破架构、环境安装及常用元素定位方法

推开Web自动化之门直达“犯罪现象”——检测架构、环境安装和常用元素定位方法

或 W3C:

2.23 通过id定位(原则上每个元素都有自己唯一的id值)——重要

学过Web自动化的同学都知道,HTML中的元素都有自己的id。 在移动端,元素仍然有自己的id值Web自动化的大门到达“犯罪现象”-侦破架构、环境安装及常用元素定位方法,但名称为-id,如下:

注意:我们看到id的值很长。 其实实际使用时只需要取斜杠/后面的部分即可,如下:

By.id("statusTitle")

2.24 通过定位(实际上是-desc)-偶尔使用

移动自动化中有一种特殊的定位方法自动化软件开发,它是基于定位的。 在dom中,用属性-desc的值来表示。 如果值写在-desc中,可以通过它来定位:

这里更尴尬了。 。 。 由于研发往往懒得写,所以找了半天也没找到例子。 希望大家都知道如何使用~

另外需要注意的是,如果想写成“By.xxx”的形式,需要使用

MobileBy.AccessibilityId("AccessibilityId");appiumdriver.findElementByAccessibilityId("AccessibilityId");

2.25 通过定位(相当于使用Api递归查找元素(独占))——高级用法

有时候我们需要在界面上进行某些操作来查找我们想要的元素,比如滑动列表进行搜索等,这时候我们可以使用

这里我们使用模拟器中的API Demo进行演示,进入Views,然后滑动屏幕找到“Popup Menu”点击即可。

可以用来进行滑屏操作,这时候就需要了。 此外,还可以使用定位元素:

官网上有用ruby写的例子,但是定位方法是一样的,可以直接在java代码中使用。

这里大概的定位方法是先用new().(true).(0)判断是否可以滑动,找到,然后用(new().text("").(0)来滑动找到定位属性对应的元素。

driver.findElementByXPath("//*[@text='Views']").click();((AndroidDriver)driver).                findElementByAndroidUIAutomator                 ("new UiScrollable(new UiSelector().scrollable(true).instance(0)).scrollIntoView(new UiSelector().text(\"Popup Menu\").instance(0))")                 .click();

在实际操作中,偶尔会出现定位失败的情况,定位元件的位置可能会出现轻微偏差。 这里稍微修改一下,以避免这种偶尔出现的故障;

修改方法:滑动屏幕查找元素时,会先滑动屏幕到要查找的元素附近。 此时,该元素已经在页面的可见范围内。 元素操作可以重新定位。 例如,单击操作可以使用Xpath方法重新定位,然后单击。 ()。

    By departmentName = MobileBy.AndroidUIAutomator(                "new UiScrollable(new UiSelector().scrollable(true).instance(0))." +                        "scrollIntoView(new UiSelector().text(\""+ departName +"\").instance(0))");        find(departmentName);//        click(departmentName); 原来直接操作滑动查找的元素结果        click(ByText(departName));//现在利用xpath重新定位确认后再操作,成功率大大提升

运行效果演示:

定位逻辑的差异

在之前的文章中,我们介绍了底层使用的各种引擎。 您可以在文章末尾查看**篇文章来查看。

我们先简单看一下下面这张图:

我们现在使用的*新版本优先支持。 如果您使用的是相对较早的版本,则可能会受支持。 那么这两款引擎对上面介绍的定位有什么影响呢? 我们看一下源码:

我们现在使用的*新版本优先支持。 如果您使用的是相对较早的版本,则可能会受支持。 那么这两款引擎对上面介绍的定位有什么影响呢? 我们看一下源码:

以id定位为例,从源码中可以看出id定位的范围更广。 当我们使用By.id时,我们会同时匹配 , id , id 。

中,对ids的定位进行了细分,在操作前判断不同的id。 所以我们在使用的时候写法一定要更加严谨。

官方文档:

源码路径:

推荐学习

内容全面升级,5个月30+项目强化培训。 资深测试架构师和开源项目作者,教你各大BAT厂商*前沿的*佳实践,帮助你一站式掌握测试开发必备的核心技能(以阿里巴巴P6+为基准,年薪50W+)! 直接推荐BAT名企测试经理,普遍加薪50%+!

炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等

相关案例查看更多

hzxuanyou.512656.com hzxuanyou.ymani.net hzxuanyou.xmzh.net hzxuanyou.bckyw.com hzxuanyou.touyo1004.com hzxuanyou.m5uae.com hzxuanyou.m5m8.com hzxuanyou.v4men.com hzxuanyou.dedatabi.com hzxuanyou.lfklsu.com hzxuanyou.s0um.com hzxuanyou.wordrive.com hzxuanyou.gpindian.com hzxuanyou.xyjzfwgs.com hzxuanyou.e51o.com hzxuanyou.readsarnia.com hzxuanyou.izuiku.com hzxuanyou.ishangys.com hzxuanyou.zosradio.com hzxuanyou.zefubao.com hzxuanyou.jfa1.com hzxuanyou.itandsoft.com hzxuanyou.bg-berlin.com hzxuanyou.j6sf.com hzxuanyou.e47n.com hzxuanyou.muchimmo.com hzxuanyou.kome2459.com hzxuanyou.3maggio.com hzxuanyou.norkov.com hzxuanyou.0qy0.com hzxuanyou.weiruifoto.com hzxuanyou.j2o2.com hzxuanyou.naradam.com hzxuanyou.y-linc.com hzxuanyou.qjygs.com