zoukankan      html  css  js  c++  java
  • Android自己主动化測试——CTS測试

     

    一、为什么须要兼容性測试(下面称CTS)?

    1.1、让APP提供更好的用户体验。用户能够选择很多其它的适合自己设备的APP。让APP更稳定。

    1.2、让开发人员设计更高质量的APP。

    1.3、通过CTS的设备能够执行Android market。

    另外,CTS是免费的,并且非常easy。

    二.CTS是开源的測试框架,使用它来測试你的设备是否具备兼容性。CTS主要包括两个组件:

    执行在PC上的測试框架组件。主要用来管理測试用例(test case)的执行。

    执行在设备或模拟器上的測试用例。这些用例用JAVA写成的APK文件。

    三、工作流程

    1、能够从源代码编译CTS,也能够从站点下载编译好的CTS

    2、安装配置CTS。

    3、把设备连接到PC上。

    4、执行CTS。CTS会把对应的測试用例(也就是一个APK文件)传送到设备上并通过instrumentation执行,然后记录执行结果,最后删除測试用例。

    全部的測试用例执行完成后,能够參照測试结果又一次调整或优化系统。然后继续执行CTS測试。

    5、測试通过以后,你能够把CTS生成的结果(就是result以下那个以測试时间命名的.zip文件)提交给cts@android.com。

    四、眼下的測试覆盖面

    眼下,为了确保兼容,測试用例覆盖了以下的这些范围

    1、Signature

    对每一个Android产品,都有一些XML文件来描写叙述全部的公开API。CTS包括了一个工具来检測这些API签名中包括的API是否都在系统中被支持。

    2、Platform

    測试SDK文档中描写叙述的平台API,比方core libraries,Android Application Framework等。要求这些API能够提供:

    正确的类、属性、方法签名、方法行为、错误參数处理方式

    3、Dalvik VM

    专门针对Dalvik Vm的測试。

    4、Platform Data Model

    平台通过ContentProvider提供给开发人员使用的数据,比方:Contacts,Browser,Settings等。

    5、Platform Intents

    平台提供的用于核心功能的Intent。

    6、Platform permission

    平台提供的一些重要APP权限

    7、Platform Resources

    simple values,drawables,nine-patch,animations,layouts,styles and themes,loading alternate resources等

    五、CTS搭建(Unbutu/Linux平台)

    1.   下载CTS包http://source.android.com/compatibility/downloads.html

    2.   在手机或者模拟器上安装CtsDelegatingAccessibilityService.apk非必需

    (1)$sudo ./adb install -r /home/tester/cts/android-cts/repository/testcases

    /CtsDelegatingAccessibil

    ityService.apk

    (2)手机或模拟器设置Settings > Accessibility > Accessibility > Delegating Accessibility Service

    3.   进入android/out/host/linux-x86/cts /android-cts/repository/tools文件夹下,改动startcts脚本文件。将脚本中的SDK_ROOT该成自己的android SDK路径.

    $cd home/tester /cts/android-cts/repository/tools $vim startcts改动脚本中出现的第一个SDK_ROOT,如"SDK_ROOT=/home/tester/cts/android-sdk-linux_86"。

    4.   运行startcts脚本。在运行CTS測试计划时(运行一段时间后,大于5分钟)会出现没有足够权限启动devices,使用$sudo ./startcts可解决该问题。

    (Windows下配置好sdk和android开发环境后,能够直接通过java命令来运行cts測试:java -Xmx512M -cp D:android-cts oolscts.jar;D:android-cts oolshosttestlib.jar;D:android-cts oolsjunit.jar;C:Androidandroid-sdk oolslibddmlib.jar com.android.cts.TestHost D:android-cts epositoryhost_config.xml

    假设使用的是android-cts-2.2_r4-x86.zip,-cp选项中须要多一个D:android-cts oolslibCtsTestAnnotationsHostLib.jar,可參考startcts脚本。)

    5.   出现例如以下提示符表示启动cts并连接设备成功。(红色部分未deviceID,视设备号而定)

    Android CTS version 2.3_r4

    Device(emulator-5544) connected

    cts_host > cts_host >

    6.   在“cts_host >”提示符下输入命令,下面为几个经常使用的命令

    help查看全部

    exit退出

    ls -p列出全部的測试包

    ls --plan列出全部的測试方案

    start --plan plan_name执行一个測试方案,如:start --plan CTS

    start --plan plan_name --package package_name执行一个特定的測试包,如:start --plan CTS --package android.bluetooth


    六、查看測试报告

    执行測试时,在CTS执行界面能看到測试报告与执行状况。測试完毕后可在android-cts/repository/results/下生成具体的測试报告和一些附加信息,当中用日期和时间命名的目录下为全部的測试结果,同一时候目录也会被打成一个相应的.zip包方便提交。用浏览器打开.xml文件(默认就是,直接双击)就能够查看所用的測试报告了。

    七:网址

    http://hi.baidu.com/jugege/blog/item/dcb6edf3f88e8d43352accb0.html

  • 相关阅读:
    Docker | 第二章:第一个Docker应用
    Docker | 第一章:Docker简介
    Docker | 第零章:前言
    SpringBoot | 第十五章:基于Postman的RESTful接口测试
    SpringBoot | 第十四章:基于Docker的简单部署
    SpringBoot | 第十三章:测试相关(单元测试、性能测试)
    2014年计划
    学习方法,工作方法 探讨
    2013年总结
    asp.net用Zxing库实现条形码输出
  • 原文地址:https://www.cnblogs.com/hrhguanli/p/4551092.html
Copyright © 2011-2022 走看看