• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • Android自動化測試—操作對話框(Dialog)上面的控件

    發表于:2013-05-07來源:Robotium作者:hao.shen點擊數: 標簽:Android
    Robotium框架提供了獲取、操作控件的API,如下圖:

      Robotium框架提供了獲取、操作控件的API,如下圖:

    20130403144739

      對于有id或者String的控件可以通過Robotium直接找到,但是對于彈出的Dialog上面的控件單純的利用Robotium的API是行不通的,見下圖場景:

    device-2013-04-03-150801

      對于上圖中彈出的Dialog中僅僅對Set和Cancel按鈕操作是可以的,但是要是操作+ – 按鈕或者需要拿到EditText控件就需要費點心思了。

      思路:主要是在彈出Dialog后通過Robotium的solo.getCurrentViews()方法得到Dialog上面的所有控件然后進行相關條件篩選。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    
    /**
    	 * 獲得dialog上面的指定類型和位置的控件,在dialog彈出時調用
    	 * @param solo
    	 * @param viewType View類型
    	 * @param index view位置
    	 * @return 返回dialog上面的指定類型和位置的控,不存在則返回null
    	 */
    	public static View getViewFromDialogByIndex(Solo solo, Class viewType , int index){
        	ArrayList dialogViews = solo.getCurrentViews();
        	ArrayList typeViews = new ArrayList();
        	for(View currentTypeView : dialogViews){
        		if(viewType.isInstance(currentTypeView)){
        			typeViews.add(currentTypeView);
        		}
        	}
        	if(dialogViews.size()&gt;0){
        		return typeViews.get(index);
        	}else {
        		return null;
    		}
    	}

    原文轉自:http://www.robotium.cn/archives/346

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>