• Robotium如何向下拖动屏幕


    今天在做手机自动化测试的时候,遇到了如下的问题:如图一所示,打开众筹网的App后便进入到这个页面,页面上图带一个轮播图,下面是项目列表。而我要测试的功能是搜索,这个搜索框架要向下拖动屏幕才能显示出来,如图二所示。

                        Robotium如何向下拖动屏幕

    图一,带轮播广告

    Robotium如何向下拖动屏幕

     图二,显示搜索框

    那么问题来了,怎么用Robotium向下拖动屏幕呢?我在网上查找了一下,可以有如下几个方法实现:

    1,Solo.scrollUp();

    2,Solo.swipe();

    3.Solo.drag();

    可是我在这个页面上试了很多遍,尝试更改了各个参数,以及各种可能影响结果的情况,就是不起作用。这不科学啊?

    问题分析:

    1,这几个拖动是针对listview的,这里面的项目列表都是卡片式的,应该是没有问题的

    2,难道是这个页面和其他的页面不同?这个页面就多了一个如图一,红线框起来的轮播图,其他的也没有什么啊?难道这个的原因!!

    3,先切换到其他的分类试一下,如果其他的分类没有问题,就肯定是这个轮播图的原因。

    解决问题:

    首先,我将页面切换到“全部”分类下,然后再尝试着以上提到的三种方法。

    其次,如果还有问题,则不是这个轮播图的问题。

    结果代码一运行,三种方法都可以使用,原来还真是这个轮播图的问题,害的我在方法上尝试了几个小时,看来努力的方向很重要,如果方向错了,再多的付出也是白搭。

    代码示例:

    public void searchobj(String proname)

        {

           

            solo.clickOnText("全部");

            solo.sleep(1000);

            solo.scrollUp();//方法1

            //方法2

            //PointF p1=new PointF(145F,500F),p2=p1,p3=new PointF(145F,700F),p4=p3;

            //solo.swipe(p1, p2, p3, p4);

            //方法3

            //solo.drag(145, 145, 500, 700, 10);

            solo.sleep(3000);              

            solo.clickOnText("搜索全站");

            solo.sleep(1000);

            EditText searchedit=solo.getEditText(0);

            solo.enterText(searchedit, proname);

            solo.sleep(1000);

            solo.pressSoftKeyboardSearchButton();

            solo.sleep(3000);

           

        }

    ----夫英雄者,胸怀大志,腹有良谋,有包藏宇宙之机,吞吐天地之志者也。
  • 相关阅读:
    通过Jenkins调用自动部署war包及jar包到服务器上的Shell脚本
    CentOS7.3+MySQL5.7+Apache2.4+PHP7.1+phpMyAdmin4.7+JDK1.8+SVN1.6+Jenkins2.1环境搭建
    telegraf1.8+influxdb1.6+grafana5.2 环境搭建 结合JMeter3.2
    HttpRunner环境搭建
    Jenkins中启动从节点时,出现问题如何解决,问题:No Known Hosts...
    python读xml文件
    使用poi或jxl,通过java读写xls、xlsx文档
    编写生成32位大写和小写字符的md5的函数
    将一个字符与对应Ascii码互转
    生成随机删除的航班信息
  • 原文地址:https://www.cnblogs.com/eagleking0318/p/6520936.html
Copyright © 2020-2023  润新知