zoukankan      html  css  js  c++  java
  • 自己动手修改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;
    }
  • 相关阅读:
    【vue】------ 路由创建 ------ 【William】
    【vue】------------@vue/cli3.7.0创建项目+ts-------------【William】
    【svn】--------------svn介绍------------------【William】
    【vue】------浅谈vue------【William】
    node创建服务器
    vue项目搭建
    利用vw做rem适配(纯css)
    nodejs实现md5和SHA256加密
    Cookie、session、localStorage、sessionStorage的区别
    tpc三次握手与四次挥手
  • 原文地址:https://www.cnblogs.com/TestingOn/p/3980930.html
Copyright © 2011-2022 走看看