__ Uiautomator通过CTSHelper类查看报告

来源:互联网 发布:淘宝直通车添加关键词 编辑:程序博客网 时间:2024/06/09 16:54

一.CTS下载配置

1.下载Android-cts;

Cts官网下载地址:https://source.android.com/compatibility/cts/downloads.html(需要能上谷歌才能下载);

或从百度云下载:链接:http://pan.baidu.com/s/1bpMdhj5密码:k7np;大家根据自己手机版本下载只下载文件中android-cts-4.4_r4-linux_x86-arm文件即可;

2. CTS位置

         下载下来之后解压文件,将解压后的android-cts放置在android-sdk路径下:

 

3.建立run-cts.bat文件

在android-cts\tools下新建一个记事本,内容如下所示,最后保存为run-cts.bat:

(以下都是基于4.4来说,5.0设置方式一样,只是tools中的jar包数量不一样)


(1)cd D:\javadev\android-sdk-windows\android-cts\tools //写自己的tools路径

(2)set path=D:\javadev\Java\jdk1.7.0_10;D:\javadev\Java\jre7\bin //写自己当时jdk和jre的路径

(3)java -cpcts-tradefed.jar;ddmlib-prebuilt.jar;hosttestlib.jar;junit.jar;tradefed-prebuilt.jar//输入自己cts\tools下所有的jar文件名,中间以分号隔开;

(4)-DCTS_ROOT="D:\javadev\android-sdk-windows"com.android.cts.tradefed.command.CtsConsole //固定格式,中间写自己的sdk路径;

最后保存以上名为run-cts.bat,以后就可以点击直接启动了;

4.启动run-cts.bat

         配置好之后,直接双击run-cts.bat,发现提示Unable tolocate adb.此时我们将android-sdk-windows\platform-tools目录中的adb有关项全部粘贴过来,重新启动run-cts.bat即可;


二.工程中CTS配置

1.下载CTSHelper.java类

         可以从网上搜,要注意网上有的CTSHelper类中有错,建议大家下载CTSHelper.java之后,先全面搜索(worksapec)如果搜到改成workspace;

         网盘共享:http://pan.baidu.com/s/1bpMdhj5密码:k7np (和cts文件夹都在一个分享中);

         下载之后同样方式放在我们项目的包下:


CTSHelper.java类中参数都不用设置;

2.修改TestClass中main方法

         这次我们要通过cts去看测试结果,所以我们要修改一些TestClass中相应信息;

整个TestClass类中代码,全部粘过去即可

[java] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. package testPackage;  
  2.   
  3. import com.android.uiautomator.core.UiDevice;  
  4. import com.android.uiautomator.core.UiObject;  
  5. import com.android.uiautomator.core.UiObjectNotFoundException;  
  6. import com.android.uiautomator.core.UiSelector;  
  7. import com.android.uiautomator.testrunner.UiAutomatorTestCase;  
  8.   
  9. public class TestClass extends UiAutomatorTestCase {  
  10.   
  11.     /* 
  12.      * public void clickTimer() throws UiObjectNotFoundException { 
  13.      * //通过text去定位手机界面的“时钟” UiObject clock = new UiObject(new 
  14.      * UiSelector().text("时钟")); clock.click(); //点击时钟 } 
  15.      */  
  16.   
  17.     /* 
  18.      * //通过UiAutomatorHelper方法去执行,在控制台能看到各种信息 public static void main(String[] 
  19.      * args) { // // 生成的包名,包名.类名;运行的测试用例,Android的编号 new 
  20.      * UiAutomatorHelper("AutoRunner", "testPackage.TestClass", "clickTimer", 
  21.      * "1"); } 
  22.      */  
  23.     // CTS执行测试用 例不会按照顺序执行,他会按照字母开头去执行,所以我们故意把顺序写乱  
  24.     public void testCaseB() {  
  25.         UiDevice.getInstance().pressBack(); // 返回上一级  
  26.         System.out.println("以上是返回上一级的意思");  
  27.     }  
  28.   
  29.     public void testCaseD() {  
  30.         UiDevice.getInstance().pressMenu();  
  31.         System.out.println("以上是点击菜单的意思");  
  32.     }  
  33.   
  34.     public void testCaseC() {  
  35.         UiDevice.getInstance().pressHome();  
  36.         System.out.println("以上是点击主页的意思");  
  37.     }  
  38.   
  39.     public void testCaseA() throws UiObjectNotFoundException {  
  40.         // 通过text去定位手机界面的“时钟”  
  41.         UiObject clock = new UiObject(new UiSelector().text("时钟"));  
  42.         clock.click(); // 点击时钟  
  43.         System.out.println("点击手机界面的:时钟;");  
  44.     }  
  45.   
  46.     // 通过CTSHelper方法去执行,控制台中看不到信息,cts调试main方法的参数配置信息  
  47.     public static void main(String[] args) {  
  48.   
  49.         new UiAutomatorHelper("AutoRunner""run.RunGld""lk_Case_Game_Recommend""1");  
  50.         String workspase, className, jarName, androidId, sdkpath;  
  51.         workspase = "F:\\lianxi\\workspace\\GldProject"// 工程路径,右击项目名-Properties,查看路径,注意路径写双斜杠  
  52.         className = "testPackage.TestClass"// 包名.类名  
  53.         jarName = "AutoRunner"// 要生成的jar包名字  
  54.         androidId = "1"// android list的id值  
  55.         sdkpath = "D:\\javadev\\android-sdk-windows"// android-skd的路径,注意路径间是双斜杠  
  56.         CtsHelper cts = new CtsHelper(workspase, className, jarName, androidId, sdkpath);  
  57.         cts.setDevices("W8AEVGTCZT9SMNIF"); // 真机设备信息,从cts\tools目录下运行run-cts.bat查看设置信息  
  58.         cts.runTest();  
  59.     }  
  60.   
  61. }  


(1)main方法中workspace值

         右击工程名字GldProject,选择Properties-Location,就是工作空间地址;注意使用路径时,中间采用双斜杠:

(2)main方法中cts.setDevices值

         找android- cts\tools中运行run-cts.bat,启动之后就能看到设备信息:

3.运行测试用例TestClass类

         TestClass当前页右击-RunAs-Java Application;


4.控制台运行结果

         从结果中我们可以很清楚看到,执行的测试用例以及测试结果,同时我们还可以在本地看到device_logcat和host_log的日志,报告中都详细描述了。

         将file://地址粘贴到浏览器,我们就能很清楚的看到测试报告;

5.查看运行报告

 将运行结果中file://粘贴到浏览器中,直接回车查看,见下:


        

 

0 0
原创粉丝点击