• 自己动手修改Robotium代码(上)


    Robotium作为Android自动化测试框架,还有许多不完善的地方,也不能满足测试人员的所有要求。那么,本文以四个实际中碰到的问题为例,介绍改动Robotium源码的过程。


    public boolean waitForActivity(String name, int timeout){
       Activity currentActivity = activityUtils.getCurrentActivity(false);
       final long endTime = SystemClock.uptimeMillis() + timeout;

       while(SystemClock.uptimeMillis() < endTime){
           if(currentActivity != null && currentActivity.getClass().getSimpleName().equals(name)) {
               return true;
           }
           
           sleeper.sleep(MINISLEEP);
           currentActivity = activityUtils.getCurrentActivity(false);
       }
       return false;
    }
     
    currentActivity.getClass().getSimpleName().equals(name)。于是,我把getSimpleName()改为getName(),这样以后使用solo.waitForActivity函数时,传入Activity的全名就好。
    public void assertViewShown(String message, View view, int timeout)
    {
       asserter.assertViewShown(message, view, timeout);
    }    

    public void assertViewShown(String message, View view, int timeout)
    {
       Assert.assertTrue(message, waiter.isViewShown(view, timeout));
    }

    public boolean isViewShown(View view, int timeout){
       if(view == null)
           return false;
       long endTime = SystemClock.uptimeMillis() + timeout;

       while (SystemClock.uptimeMillis() < endTime{
           if(view.isShown())
               return true;
           sleeper.sleep(MINISLEEP);
       }
       return false;
    }
  • 相关阅读:
    wince开发_摩托罗拉MC3100_打开条码设置
    【Scala类型系统】自身类型(self type)引用
    Scala 基础新手教程
    ActiveMQ消息队列的使用及应用
    nginx配置服务器负载均衡
    ActiveMQ_Linux安装
    js调试工具Console命令详解
    微信JS-SDK选择相册或拍照并上传PHP实现
    微信公众平台开发接口PHP SDK完整版
    微信JS接口汇总及使用详解
  • 原文地址:https://www.cnblogs.com/TestingOn/p/3980930.html
Copyright © 2020-2023  润新知