如何在Appium-Java中获取水平条的最后一个元素?

问题描述 投票:0回答:1

我是appium的新手,我只是在这个特定的地方停留了这么长时间,而且没有一个解决方案对我有用了。即使是正确方向上的一点点推动也会非常感激。

我正在尝试自动化一个看起来像下面的应用程序.enter image description here

我想在第一个水平横幅中穿越(例如: - 最近添加的电视)。播放该横幅中的所有视频,然后以相同的方式继续第二个横幅(最近添加的电影)。

我发现找到这些元素的定位器的问题。以下是Android应用程序的结构。

<Android App>    
      <First Horizontal Tab-Recently Added TV>
      [resource-id="A",class="B",index=0]
                    <Child Element-Video File>
                          [resource-id="A",class="B",index=0]
                    <Child Element-Video File>
                          [resource-id="A",class="B",index=1]
                    <Child Element-Video File>
                          [resource-id="A",class="B",index=2]  
                    <Child Element-Video File>
                          [resource-id="A",class="B",index=3]          

      <First Horizontal Tab-Recently Added Movies>
      [resource-id="A",class="B",index=0]

                    <Child Element-Video File>
                          [resource-id="A",class="B",index=0]
                    <Child Element-Video File>
                          [resource-id="A",class="B",index=1]
                    <Child Element-Video File>
                          [resource-id="A",class="B",index=2]  
                    <Child Element-Video File>
                          [resource-id="A",class="B",index=3]  

除了标题之外,两个水平条都具有所有相同的参数。子元素在滑动条之间具有共同的参数。

我想在第一个滑动条中获取视频的总数,滚动它并在该行中获取视频计数直到结束。然后从主页开始逐个播放视频。

但是我得到了双重数,因为这两个条都有元素的所有通用名称。

请告诉我如何获得所需的结果,或者甚至可以这样做。

java selenium selenium-webdriver appium appium-android
1个回答
0
投票

您可以尝试使用xpath定位器来获取所有视频文件。

也许UIAutomatorViewer是有帮助的。它显示了所有不同类型的定位器,您可以保存基础XML。使用XMLSpy或其他在线工具等工具,您可以测试xpath定位器。

请记住在使用UIAutomatorViewer之前停止appium服务器,否则它将无法工作。

© www.soinside.com 2019 - 2024. All rights reserved.