uiautomator 代码记录 : BT发送测试

来源:互联网 发布:平板电脑js加载错误 编辑:程序博客网 时间:2024/06/08 23:59
package rom;import java.lang.*;import java.util.Random;import java.io.File;import com.android.uiautomator.core.UiDevice;import com.android.uiautomator.core.UiScrollable;import com.android.uiautomator.core.UiSelector;import com.android.uiautomator.core.UiObject;import com.android.uiautomator.testrunner.UiAutomatorTestCase;import android.R.id;import android.R.string;import android.graphics.Rect;import android.graphics.SumPathEffect;import android.os.RemoteException;import android.util.Log;import com.android.uiautomator.core.UiWatcher;import com.android.uiautomator.core.UiObjectNotFoundException;import com.android.uiautomator.core.UiDevice;public class BTtest extends UiAutomatorTestCase{public int startapp(String componentName){StringBuffer app = new StringBuffer();app.append("am start -n");app.append(componentName);int ret = 1;try{Process process = Runtime.getRuntime().exec(app.toString());ret = process.waitFor();}catch(Exception e){e.printStackTrace();System.out.println("startapp Exception!!! ");}return ret;}public void Screenshot(String name) { //截取当前屏幕图片的方法File file = new File("/mnt/sdcard/Podcasts/log"+name+".png");UiDevice.getInstance().takeScreenshot(file);}public void longclick (UiObject ojb){ //长按方法try{Rect ojbValue = ojb.getBounds();UiDevice.getInstance().swipe(ojbValue.centerX(), ojbValue.centerY(), ojbValue.centerX()+5, ojbValue.centerY()+5, 250);}catch(UiObjectNotFoundException e ){e.printStackTrace();}}public void testbt()throws UiObjectNotFoundException,RemoteException{String BTname = "HG11";sleep(10000);for(int i=0;i<50;i++){UiDevice.getInstance().sleep();sleep(1000);UiDevice.getInstance().wakeUp();sleep(1000);try{UiObject Unlocked = new UiObject(new UiSelector().resourceId("com.android.systemui:id/notification_stack_scroller"));assertTrue("Unlocked fail!...",Unlocked.exists());Unlocked.swipeUp(25);sleep(1000);}catch(UiObjectNotFoundException e1){e1.printStackTrace();Log.d("Unlocked", "Exception!!!", e1);System.out.println("Unlocked Exception!!!");Screenshot("Unlocked_"+i);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().sleep();sleep(1000);UiDevice.getInstance().wakeUp();sleep(1000);}startapp("com.android.settings/com.android.settings.Settings");sleep(1000);UiObject bt = new UiObject(new UiSelector().text("蓝牙").resourceId("android:id/title"));assertTrue("bt fail!....",bt.exists());bt.clickAndWaitForNewWindow();UiObject off = new UiObject(new UiSelector().text("开启").resourceId("com.android.settings:id/switch_widget"));assertTrue("off fail!....",off.exists());off.click();sleep(3000);UiObject on = new UiObject(new UiSelector().text("关闭").resourceId("com.android.settings:id/switch_widget"));assertTrue("on fail!...",on.exists());on.click();sleep(1000);UiObject bt1 = new UiObject(new UiSelector().text(BTname).resourceId("android:id/title")); //搜索配对蓝牙int time = 0 ;do {time++;sleep(5000);} while (!(bt1.exists()||time<12));sleep(1000);bt1.clickAndWaitForNewWindow();Screenshot("Pairing_Bluetooth"+i);sleep(2000);UiObject pair = new UiObject(new UiSelector().text("配对").resourceId("android:id/button1")); // 点击配对assertTrue("pair fail!...",pair.exists());pair.clickAndWaitForNewWindow();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();startapp("com.mediatek.filemanager/com.mediatek.filemanager.FileManagerOperationActivity"); //进入文件管理UiObject sd = new UiObject(new UiSelector().text("SD卡").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));assertTrue("sd fail!...",sd.exists());sd.clickAndWaitForNewWindow(); //点击进入sd卡UiObject Video_folder = new UiObject(new UiSelector().text("视频shiping") .resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject Picture_folder = new UiObject(new UiSelector().text("墙纸qiangzhi") .resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject Music_folder = new UiObject(new UiSelector().text("音乐yinyue") .resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject [] random_document = {Video_folder,Picture_folder,Music_folder};Random random = new Random();int Value =random.nextInt(3);UiScrollable scroll = new UiScrollable(new UiSelector().resourceId("com.mediatek.filemanager:id/list_view").className("android.widget.ListView").packageName("com.mediatek.filemanager"));assertTrue("scroll fail!...", scroll.exists());scroll.scrollIntoView(random_document[Value]);sleep(1000);random_document[Value].clickAndWaitForNewWindow();if(random_document[Value].equals(Video_folder)){ //进入视频文件夹后Random Video_random = new Random();UiObject Video_1 = new UiObject(new UiSelector().text("爱有你才完整官方版--音悦tai.mp4").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject Video_2 = new UiObject(new UiSelector().text("荷塘月色--音悦tai.mp4").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject Video_3 = new UiObject(new UiSelector().text("江南style完整版--音悦tai.mp4").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject Video_4 = new UiObject(new UiSelector().text("泡沫--音悦tai.mp4").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject[] Video_group = {Video_1,Video_2,Video_3,Video_4};longclick(Video_group[Video_random.nextInt(4)]); //长按sleep(1000);UiObject share = new UiObject(new UiSelector().description("分享").resourceId("com.mediatek.filemanager:id/share"));assertTrue("share fail!...",share.exists());share.clickAndWaitForNewWindow();sleep(1000);}else if(random_document[Value].equals(Picture_folder)){ //进入图片文件夹后UiObject Picture_1 = new UiObject(new UiSelector().text("087cc91d9f304e05d0581bca.jpg").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject Picture_2 = new UiObject(new UiSelector().text("1-100PP93123.jpg").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject Picture_3 = new UiObject(new UiSelector().text("1216-110424100921.jpg").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject Picture_4 = new UiObject(new UiSelector().text("1229390021306i5q8hgj9cb.jpg").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));longclick(Picture_1); //长按sleep(1000);Picture_2.click();sleep(1000);Picture_3.click();sleep(1000);Picture_4.click();sleep(1000);UiObject share = new UiObject(new UiSelector().description("分享").resourceId("com.mediatek.filemanager:id/share"));assertTrue("share fail!...",share.exists());share.clickAndWaitForNewWindow();sleep(1000);}else if(random_document[Value].equals(Music_folder)){ //进入音乐文件夹后UiScrollable Music_scroll = new UiScrollable(new UiSelector().resourceId("com.mediatek.filemanager:id/list_view").className("android.widget.ListView").packageName("com.mediatek.filemanager"));UiObject Music_1 =new UiObject(new UiSelector().text("阿悄 - 神武雨霖铃.mp3").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject Music_2 =new UiObject(new UiSelector().text("蔡健雅,周三 - 周三的情书.mp3").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject Music_3 =new UiObject(new UiSelector().text("陈奕迅 - 浮夸.mp3").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject Music_4 =new UiObject(new UiSelector().text("陈奕迅 - 十年.mp3").resourceId("com.mediatek.filemanager:id/edit_adapter_name"));UiObject[] Music_group = {Music_1,Music_2,Music_3,Music_4};Random Music_random = new Random();int Music_random_Value = Music_random.nextInt(4);Music_scroll.scrollIntoView(Music_group[Music_random_Value]);sleep(1000);longclick(Music_group[Music_random_Value]);sleep(1000);UiObject share = new UiObject(new UiSelector().description("分享").resourceId("com.mediatek.filemanager:id/share"));assertTrue("share fail!...",share.exists());share.clickAndWaitForNewWindow();sleep(1000); }UiObject Share_Bluetooth = new UiObject(new UiSelector().text("蓝牙").resourceId("android:id/text1").className("android.widget.TextView"));assertTrue("Share_Bluetooth fail!...", Share_Bluetooth.exists());Share_Bluetooth.clickAndWaitForNewWindow();sleep(1000);Screenshot("Share_Bluetooth_"+i);UiObject Select_Bluetooth_to_share = new UiObject(new UiSelector().text(BTname).resourceId("android:id/title"));do {sleep(2000);} while (!Select_Bluetooth_to_share.exists());Select_Bluetooth_to_share.clickAndWaitForNewWindow();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().openNotification();sleep(5000);/*UiObject Share_progress = new UiObject(new UiSelector().resourceId("com.android.systemui:id/notification_stack_scroller").className("android.widget.ScrollView"));UiObject Share_progress1 = Share_progress.getChild(new UiSelector().index(0).className("android.widget.FrameLayout")); */UiObject Share_progress1 = new UiObject(new UiSelector().resourceId("android:id/progress").className("android.widget.ProgressBar"));for(int j=0;j<5;j++){ //判断蓝牙文件是否传输完毕do {sleep(1000);} while (Share_progress1.exists());}sleep(1000);Screenshot("Share_progress_End_"+i);sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);startapp("com.android.settings/com.android.settings.Settings"); //再次进入设置sleep(1000);UiObject bt2 = new UiObject(new UiSelector().text("蓝牙").resourceId("android:id/title")); //点击蓝牙assertTrue("bt fail!....",bt2.exists());bt2.clickAndWaitForNewWindow();UiObject Bluetooth_settings = new UiObject(new UiSelector().description("设备设置") //点击连接的蓝牙设置.resourceId("com.android.settings:id/deviceDetails"));assertTrue("Bluetooth_settings fail!...",Bluetooth_settings.exists());Bluetooth_settings.clickAndWaitForNewWindow();sleep(1000);UiObject Cancel_save = new UiObject(new UiSelector().text("取消保存").resourceId("android:id/button2"));  //取消已经连接的蓝牙Cancel_save.clickAndWaitForNewWindow();sleep(1000);Screenshot("Cancel_save_"+i);sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);UiDevice.getInstance().pressBack();sleep(1000);}}}


 
原创粉丝点击