Android无线测试之—UiAutomator UiObject API介绍七

判断对象是否存在

1、判断对象是否存在相关API

返回值 API 描述
boolean waitForExists(long timeout) 等待对象出现
boolean waitUntilGone(long timeout) 等待对象消失
boolean exists() 检查对象是否存在

 

 

 

 

2、API应用举例

package com.test.uiobject;

import java.io.File;

import android.graphics.Rect;
import android.view.KeyEvent;

import com.android.uiautomator.core.UiDevice;
import com.android.uiautomator.core.UiObject;
import com.android.uiautomator.core.UiObjectNotFoundException;
import com.android.uiautomator.core.UiSelector;
import com.android.uiautomator.testrunner.UiAutomatorTestCase;

public class Demo extends UiAutomatorTestCase {

    /**
     * @param args
     */
    public static void main(String[] args) {
        String jarName,testClass,testName,androidId;
        jarName="demo";
        testClass="com.test.uiobject.Demo";
        testName="testExists";
        androidId="1";
        new UiAutomatorHelper(jarName,testClass,testName,androidId);

    }
    
    public void testExists() throws UiObjectNotFoundException{
        UiDevice.getInstance().pressHome();
        sleep(2000);
        UiObject message=new UiObject(new UiSelector().text("Messaging"));
        message.click();
        sleep(2000);
        
        UiObject text=new UiObject(new UiSelector().text("No conversations."));
        if(text.exists()){
            System.out.println("No conversations, please create a message");
        }
        
        UiObject create=new UiObject(new UiSelector().resourceId("com.android.mms:id/action_compose_new"));
        if(create.waitForExists(5000)){
            create.click();
            UiObject to=new UiObject(new UiSelector().resourceId("com.android.mms:id/recipients_editor"));
            to.click();
            UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_1);
            UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_0);
            UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_0);
            UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_8);
            UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_6);
            UiObject typeMessage=new UiObject(new UiSelector().resourceId("com.android.mms:id/embedded_text_editor"));
            typeMessage.setText("hello, my name is fsw!");
            UiObject button=new UiObject(new UiSelector().resourceId("com.android.mms:id/send_button_sms"));
            button.click();
            sleep(2000);
        }
    }
}
Demo.java

 

posted on 2015-06-15 17:36  发卡  阅读(410)  评论(0编辑  收藏  举报