2016年10月2日星期日

如何在不使用Appium中的scrollTo()的情况下执行Perspective Vertical滚动?



我已经写了 如何使用scrollTo()执行垂直滚动?但是,如果您使用新的Java Client 4.1.2更新,则将注意到不推荐使用scrollTo()方法。因此,在本文中,我将解释执行“垂直滚动”的另一种方法。它非常简单易懂,因此让我们开始吧。

测试案例方案-

1.启动应用程序
2.执行垂直滚动

查找X坐标-
我们需要屏幕的y坐标 并发现有两种方法-
1.使用指针位置-
   *转到手机设置
   *单击开发人员选项
   *启用指针位置 
   *打开您的应用,然后单击水平选项卡的中间,然后您将得到x和y
      坐标,但记下x-坐标。

2.使用UI自动器- 
  *打开UIAutomator检查器。
   * Take screen shot.
  *单击水平选项卡的中间,并记下右上角显示的x坐标。

测试用例 -
1.我们将执行 verticalScroll() 方法。通过这种方法,我们可以得到屏幕尺寸 滚动时找到我们的起点和终点。我们也有x个坐标,所以我们可以使用 driver.swipe()执行垂直滚动,如下所示
2.我们使用for循环滚动直到找到所需的文本。


@Test
    public void testScroll()throws Exception
    {
        for(int i=0;i<4;i++)
        {
            Thread.sleep(2000);
            if (driver.findElement(By.name("end_item")).isDisplayed())
            {
                driver.findElement(By.name("end_item")).click();
                break;
            }
            else
            {
                verticalScroll();
            }

        }
    }
    public void verticalScroll()
    {
        size=driver.manage().window().getSize();
        int y_start=(int)(size.height*0.60);
        int y_end=(int)(size.height*0.30);
        int x= size.width / 2;
        driver.swipe(x,y_start,x,y_end,4000);
    }

通过这篇文章,您可以编写垂直滚动的测试代码 指定的尺寸,垂直滚动直到找到元素  and 垂直滚动直到结尾。

我希望你能找到这个 教程很有用。在评论中分享您的反馈和问题 请在社交媒体上关注我以获取最新帖子 updates.

6条评论:

  1. 我正在使用启动appium服务器的编程方式..我如何以编程方式启动appium 1.5+ ..我还没有安装appium.exe

    回复删除
  2. [调试]显示范围:[0,0] [720,1280]
    信息:[调试] [引导] [调试]显示范围:[0,0] [720,1280]
    信息:[调试] [引导] [调试]从[x = 360.0,y = 768.0]滑动到[x = 360.0,y = 384.0],步骤:112

    但它不会滚动

    回复删除
  3. 过时的方式。

    回复删除
  4. 你好
    我有这样的情况。我进行搜索,应用程序以列表格式显示搜索结果。现在,我想获得列表中所有元素的数量。 getsize()方法仅计算可见项。但仍有许多元素是不可见的(即页面需要滚动)。那么我如何获得元素的总数(可见和不可见)

    回复删除
  5. 为什么我们需要像上面的示例(size.height * 0.60)一样将高度和宽度乘以某个百分比。我们如何知道要乘以多少确切百分比?一世'我总是很困惑获得正确的坐标。请分享解决方案。

    回复删除
  6. Collection Marts是一个平台,您可以在其中查看有关家居装饰和床上用品的最新设计。我们拥有各种类别的大范围产品,其中最好的棉和丝绸面料。您不仅可以查看当前趋势,还可以以合理的价格查看大量的收藏。 新床单 , 双人床被子 , 古尔·艾哈迈德的棉被价格 , 花式床单设计 , 羽绒被套 Collection Marts可以提供有关交货以及客户支持的快速服务。我们的产品不仅是自制的,而且与市场保持良好的联系,以确保客户购买时有可用设计的可能性。 Collection Marts客户支持中心24/7全天候开放,以指导其客户有关材料或产品的信息。

    回复删除