`
fanfq
  • 浏览: 269969 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Android自动化测试可行性途径分析

阅读更多

 

测试手段1: CTS 

用来确保某设备符合Android兼容性规范。

CTS 原来只对 OHA 联盟开放。 最近 Google 把它 Release 出来了。 似乎做过一些裁剪 , 比如针对 Java 虚拟机的测试,似乎被删除了,但我们一般用不着这么高深的。 
针对每个版本,比如 2.1, 2.2, Goolge 发布了一个兼容性规范,而 CTS 测试就是用来确保某手机或者模拟器符合该兼容性规范。 
CTS 测试基于 Android instrumentation 测试, 其又基于 JUnit 测试。 说白了, CTS 就是一堆单元测试用例。 这也是 Java 语言的擅长部分。 
在 2.1 模拟器上试验了一下, 有少数没有通过。 
目前 CTS 主要包括功能方面的测试,有少数的性能方面的测试。 性能测试未来会越来越多。 
总的来说, CTS 跟 WM 的 LTK 测试还是弱了一些, 毕竟还年轻。 它只包括自动化测试,目的主要是保证 API 的兼容性。由于基于单元测试, CTS 本身不能用于测试多应用交互的情况。 
对我们的帮助: 
1)   应用程序的开发者可以开发出自己应用的单元测试,并将其加入 CTS 测试集。 
2)   设备制造商可以通过周期性运行 CTS 测试,确保没有对 Android 伤筋动骨。
测试手段2: Monkey 1) 应用程序的开发者可以测试自己应用的鲁棒性。 [鲁棒是Robust的音译,也就是健壮和强壮的意思。 鲁棒性(robustness)就是系统的健壮性。它是在异常和危险情况下系统生存的关键。比如说,计算机软件在输入错误、磁盘故障、网络过载或有意攻击情况下,能否不死机、不崩溃,就是该软件的鲁棒性。所谓“鲁棒性”,是指控制系统在一定(结构,大小)的参数摄动下,维持某些性能的特性。根据对性能的不同定义,可分为稳定鲁棒性和性能鲁棒性。以闭环系统的鲁棒性作为目标设计得到的固定控制器称为鲁棒控制器。 ] 2) 设备制造商可以使用猴子对自己的设配施行压力测试。看设备能坚持多久。 Monkey测试即可以针对全局,也可以正对某个局部(某个 Category, package等等)。 执行简单,效果明显。 测试手段3: ASE ASE 意思为 Android 脚本环境, 即我们可以通过脚本(比如 Python)调用 Android 的功能,从而定制一些测试。比如打电话,发短信,浏览网页,等。 我们可以扩充它的API(Java 部分), 并用python 脚本调用这些 API, 从而实现丰富的测试功能。 用于API 部分可以访问到Android全部API, python又能灵活部署测试,所以 ASE 的扩展性非常好。 测试手段4: Robotium 该工具用于黑盒的自动化测试。可以在有源码或者只有APK的情况下对目标应用进行测试。 Robotimu 提供了模仿用户操作行为的API,比如在某个控件上点击,输入 Text 等等。 测试手段5: 单元测试 Android 本身带有很多单元测试例子,我们可以按需要模仿它们,针对某个应用进行单元测试。 注意 Android 的Instrument机制功能非常强大,可以测试 UI。 总结 对于 CTS/Monkey, 我们不需要开发,只要执行测试就可以了。 对于 ASE, 我们可以扩充它的现有API(Java), 用Python调用这些API实现丰富的测试功能。 Robotium 模仿普通用户行为,可以试着把一些原来由测试工程师做的测试变成Robotium自动化实现。

 

分享到:
评论
1 楼 caohepu 2010-11-25  
有没有方案将ASE与Robotium结果起来?

相关推荐

    Android自动化测试可行性途径分析.pdf

    ### Android自动化测试可行性途径分析 #### 一、CTS (Compatibility Test Suite) 测试 **CTS简介**:CTS,即兼容性测试套件,是Google为了确保Android设备与Android操作系统兼容而设计的一系列测试集合。最初,CTS...

    android自动化测试资料

    3.Create_Android_Sample_App ...Android自动化测试可行性途径分析 Android自动化测试之道 GSM手机自动化测试解决方案 手机自动化测试系统设计浅析 在Android_Robotium自动化测试中导出Test_result

    基于AI算法实现精准测试

    总的来说,宋泽坤的分享强调了在快速迭代的敏捷开发体系中,通过AI算法实现精准测试的可行性和重要性,展示了如何通过AI技术的应用来解决传统测试方法所面临的问题,以期达到更高的测试效率和质量。

    Android手机电子书阅读器的设计实现分析设计分析说明书模板.doc

    同时,技术可行性分析确保在Android平台上实现这些功能是切实可行的。 在总体设计阶段,要考虑软件的架构,包括用户界面(UI)设计、数据管理、网络通信等方面。UI设计需要简洁直观,便于用户操作,同时提供多种...

    安卓推送系统毕业设计论文

    总的来说,这款基于 Android 的学习资源推送系统综合运用了软件工程中的系统分析与设计方法,通过需求调研、系统规划、系统分析和设计,构建了一个能够自动化推送学习资源的平台。其核心技术创新在于结合了移动设备...

    安卓取证系统的设计与实现.pdf

    - **普适性**:由于采用通用的方法和技术,该取证系统可以应用于各种Android设备,具有较高的可行性。 - **隐私与安全**:在取证过程中,必须遵循严格的法律程序,保护个人隐私,同时确保数据的安全性。 5. **...

    仓库管理系统需求说明书.pdf

    因此,引入计算机信息管理技术,通过自动化系统来提升仓库管理的准确性和速度,成为企业降低成本、提高效率的有效途径。 2. **开发目的与意义**:对于中小型公司,仓库管理系统旨在优化进货、销售和库存管理,减轻...

    基于BP神经网络的轨道平顺度检测系统.pdf

    通过Android设备进行数据采集和处理,进一步验证了这种方法的可行性,为轨道平顺度检测和钢轨病害识别提供了新的思路。 【轨道平顺度检测算法】检测算法基于时间序列分析,以峭度和均方根作为特征提取的指标。峭度...

    基于图像识别的恶意软件静态检测模型.docx

    2007年,DANIEL等人研究了不同操作码的出现频率,并证实了这种方法的可行性;2014年,YUAN等人提出了基于深度学习的恶意软件检测方法,通过对安卓手机程序的特征提取,获得了比传统机器学习模型更优的结果;2018年,...

    智慧城市智能停车系统探究.docx

    5. **可行性与社会经济效益** - 实施该项目将减少无效交通流,改善道路状况,减少环境污染,节约时间和资源。 - 通过数字化改造,停车场管理成本降低,同时带动相关产业发展,如4G通信、物联网设备制造等。 总的...

    精品资料(2021-2022年收藏)课程设计项目报告李伟男.doc

    系统实现后,进行了测试和效果展示,验证了设计的可行性。通过对实现的系统进行评估,报告总结了课题成果,并提出了对智能电池管理系统及其模块的改进建议。特别是,该软件引入了Markov链方法,根据用户的使用历史...

    termux-arch:您可以使用setupTermuxArch.sh:mobile_phone_with_arrow:在Android和Chrome上的Termux中安装Arch Linux。 此设置脚本将尝试在您的Termux环境中设置Arch Linux

    Termux-arch的核心是`setupTermuxArch.sh`脚本,这是一个用Bash编写的自动化安装程序。通过运行这个脚本,用户可以在不需root权限的情况下,在Termux中搭建Arch Linux的PRoot环境。PRoot是一种技术,它可以在非root...

    基于无线传感器网络的智能家居系统的设计与实现.pdf

    在当前的信息时代,智能家居系统的设计与实现已成为家庭自动化领域中的重要课题。本文中提到的“基于无线传感器网络的智能家居系统的设计与实现”是一项利用无线传感器网络技术,结合嵌入式智能系统,达到家居智能化...

    Kotlin概述与学习指南

    ### Kotlin 概述与学习指南 #### 当前技术背景下的编程语言发展 ...如果你之前没有接触过 Java,那么直接学习 Kotlin 也是完全可行的,因为 Kotlin 的语法更加简洁易懂,而且有许多优秀的学习资源可供利用。

Global site tag (gtag.js) - Google Analytics