• Robotium API -- 等待执行的方法sleep、waitFor


    测试中经常出现明明有控件或者文本,但是由于界面没有载入完成或者其他原因导致assert判断的结果失败。或者两次执行,一次成功,一次失败的情况。所以需要加入这些等待某些控件或者文本载入的方法,以加强程序执行的健壮性。

    sleep是固定长度时间的等待,waitFor则是等待某个控件或者文本载入后再进行下一步操作。

    故两者都能用的情况下,推荐waitFor

     

    sleep,固定时间的等待

    void sleep(int time)

    让测试停止若干时间以便进行下一步操作

    参数:

    time-停止的时间,单位是毫秒,如sleep(2000),是停止了2秒钟

    返回:

     

    waitFor,等待特定的某个控件或者文本载入后再进行下一步操作

    boolean waitForActivity ( Class<extends android.app.Activity > activityClass | String name [, int timeout])

    等待某个activity载入以进行下一步操作

    参数:

    activityClass-定位activity的class

    name-定位activity的名称

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    返回:

    true-在失效时间前出现了activity

    false-过了失效时间仍未找到

     

     

    boolean waitForView ( Class<T> viewClass [, int timeout, boolean scroll])

    等待某个view载入以进行下一步操作,通过view的class定位

    参数:

    viewClass-定位view的class

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    scroll-是否允许滚动搜索,true表示支持,false表示只能在当前屏幕内查找

     

    返回:

    true-在失效时间前出现了view

    false-过了失效时间仍未找到

     

    boolean waitForView (int id [, int minimumNumberOfMatches, int timeout, boolean scroll])

    等待某个view载入以进行下一步操作,通过view的id定位

    参数:

    id-定位view的id

    minimumNumberOfMatches-最小指定多少才可以往下进行,0表示1个或者多个

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    scroll-是否允许滚动搜索,true表示支持,false表示只能在当前屏幕内查找

    返回:

    true-在失效时间前出现了view

    false-过了失效时间仍未找到

     

    boolean waitForView ( android.view.View.view  view [, int timeout, boolean scroll])

    等待某个view载入以进行下一步操作,通过view名称定位

    参数:

    view-定位view的名称

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    scroll-是否允许滚动搜索,true表示支持,false表示只能在当前屏幕内查找

    返回:

    true-在失效时间前出现了view

    false-过了失效时间仍未找到

     

    boolean waitForText (String text [, int minimumNumberOfMatches, int timeout, boolean scroll, boolean onlyVisible])

    等待某个文本载入以进行下一步操作

    参数:

    text-等待的文本

    minimumNumberOfMatches-最小指定多少才可以往下进行,0表示1个或者多个

     

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    scroll-是否允许滚动搜索,true表示支持,false表示只能在当前屏幕内查找

    onlyVisible-只有可见的才会被统计

    返回:

    true-在失效时间前出现了view

    false-过了失效时间仍未找到

    boolean waitForDialogToOpen([int timeout])

    等待对话框打开

    参数:

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    返回:

     

    true-在失效时间前打开了dialog

    false-过了失效时间仍未打开

     

    boolean waitForDialogToClose([int timeout])

    等待对话框关闭

    参数:

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    返回:

    true-在失效时间前关闭了dialog

    false-过了失效时间仍未关闭

    boolean waitForWebElement (By by [, int minimumNumberOfMatches, int timeout, boolean scroll])

    等待某个web控件载入以进行下一步操作

    参数:

    by-定位web控件的by属性

    minimumNumberOfMatches-最小指定多少才可以往下进行,0表示1个或者多个

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    scroll-是否允许滚动搜索,true表示支持,false表示只能在当前屏幕内查找

    返回:

    true-在失效时间前出现了web控件

    false-过了失效时间仍未找到

    boolean waitForFragmentById (int id [, int timeout])

    等待Fragment载入以进行下一步操作,以id定位Fragment

    参数:

    id-定位Fragment的id

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    返回:

    true-在失效时间前出现了Fragment

    false-过了失效时间仍未找到

     

    boolean waitForFragmentByTag (String id [, int timeout])

     

    等待Fragment载入以进行下一步操作,以tag定位Fragment

    参数:

    tag-定位Fragment的tag

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    返回:

    true-在失效时间前出现了Fragment

    false-过了失效时间仍未找到

     

    boolean waitForLogMessage (String logMessage [, int timeout])

    等待日志信息载入以进行下一步操作

    参数:

    logMessage-等待加载的日志

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    返回:

    true-在失效时间前出现了logMessage

    false-过了失效时间仍未找到

    boolean waitForCondition (Condition condition, int timeout)

    等待某种条件加载以进行下一步操作

     

    参数:

    condition-需要满足的条件

    timeout-失效时间,如果过了这个时间就不再等待,认为失败。单位毫秒,默认20秒

    返回:

    true-在失效时间前出现了满足condition的条件

    false-过了失效时间仍未找到

     

    注:Condition是一个interface,里面只有一个方法isSatisfied () ,用于多条件的等待

    【转载:http://blog.csdn.net/tt75281920/article/details/26947017】

  • 相关阅读:
    HDU 1507 Uncle Tom's Inherited Land*
    HDU 2527 Safe Or Unsafe (哈夫曼树)
    HDU More lumber is required
    HDU Machine Schedule
    HDU 3709 Balanced Number (数位DP)
    HDU Number Sequence (容斥原理)
    csharp: word or excel Convert to PDF
    csharp: winform using Microsoft.Ink(Tablet PC API) create Signature image
    Create Ms Word doc using Javascript And vbscript
    sql distinct
  • 原文地址:https://www.cnblogs.com/deepstone/p/3999540.html
Copyright © 2020-2023  润新知