手机软件自动化测试探索

来源:互联网 发布:vmware tools10 linux 编辑:程序博客网 时间:2024/06/09 19:05

手机软件自动化测试探索

作者:张元礼
http://blog.csdn.net/vincetest 

手机软件测试面临的困境与挑战
    手机行业也就是在最近短短的几年间以迅雷不及掩耳之势发展,起初手机软件功能设计简单,性能要求也比较低下,在发展之初,手机用户对于手机这个新产品来说是极为陌生,因此手机软件质量对于用户来说要求是比较宽松的。在当时的市场和技术环境下,手机软件的研发周期的相对较长,对于手机测试稳定这个阶段来说时间上也是比较充裕的,至于测试方法可能主要还是采用原始的手工测试,毕竟手工测试最为直接,也最为真实,见效也很快,测试门槛比较低,可能随便找几个工程师稍加培训即可上岗测试【文章来源:张元礼的博客 http://blog.csdn.net/vincetest
    在短短的几年间手机行业发展迅猛,而且用户对功能、性能、稳定性的要求是越来越高,用户对手机越来越熟悉,对于质量意识也逐渐提高,并且市场响应也快,研发周期严重缩短,市场竞争压力大,以往的传统手工测试难以满足让如今复杂的手机软件系统快速稳定,毕竟手工测试所耗费的人力和精力是很巨大的。也就给手机软件测试赋予了极大的挑战。
    挑战一:手机出货周期快,生命周期短,要快速稳定必须要极大的人力和较长的时间来执行测试,就我了解而言国内大点的手机公司具备有一定规模的测试团队,相对小的设计公司或者第三方手机软件提供商基本没有手机软件测试团队或者很少人力投入测试。
    挑战二:手机软件测试很容易让测试人员产生疲倦心理,比常规的桌面软件手工测试疲倦得更为严重,很容易让测试人员反感,从而极大的影响了测试效果和效率,甚至有看花眼或一不留神溜掉Bug的情况。另外原始的手工测试大部分属于一种体力活,比如做一个添加通讯录的极限操作测试,很容易想象要做一个存3000条通讯录的极限测试那是多么痛苦的事情。
    挑战三:手机软件系统复杂,很多项测试是测试人员无法用手工测试或者手工测试根本就不可靠、不精准。【文章来源:张元礼的博客 http://blog.csdn.net/vincetest
   
困境与挑战新思路
    自动化测试起源于桌面软件或命令行方式测试,对于手机这样的手持终端设备当然也同样适用,其原理大致相同,最大的特点或区别在于实现其机制复杂,在国外一些大型的手机厂商陆续研发出自己的一些自动化测试工具,也有专业的测试工具研发厂商在致力于这类自动化测试工具的研发,然而在国内貌似少之又少,这就给国内的一些准备投入手机自动化测试的公司或人员带来一定的难度。鉴于此本人依据自己的浅薄学识将一些思路写出来与大家探讨予以总结。
    探索一:与常规的桌面软件自动化测试原理相同,软件关键图标与文字信息抓取识别,还有就是动作录制于回放机制实现快速回归机制;
    探索二:对于桌面自动化测试工具来说捕获或录制机制已经成熟,那么对于手机软件来说该怎么做呢?是照搬原理,还是另有捷径?本人也了解过一些关于手机方面自动化测试工具的一些介绍或原理,大致是需要手机本身的软件系统(OS层)提供底层API的支持,比如底层图片处理方面的API、消息处理、触屏处理等。
    探索三:借助PC机强大的任务处理功能跨越手机软件本身的测试缺陷,利用手机与PC的通讯设备连接跨越的桥梁,通讯设备包括串口、USB等,在手机端驻留一个测试代理,测试代理通过串口或USB与PC机对应的测试工具通讯以此获取信息或者执行测试动作,使得绝大部分对手机的操作转移到PC软件的测试操作,这些说起来倒是几句话,实际实现起来应该存在不少技术上的困难,另外现在智能机的不断出现也给自动化测试的研究带来一定的机会,比如测试代理这块的实现应该有所突破,可以把测试代理认为是一个第三方的软件给安装进去或者有其他更为奇妙的方式,因为未来的智能机将会更灵活更易控制。【文章来源:张元礼的博客 http://blog.csdn.net/vincetest
    
    以上所说的也许都是些想当然的思路,必须要以手机软件系统实现机制出发,根据实现机制部署自动化测试思路,实现技术上的点滴积累,开始可以从简单的入手,打好自动化测试部署的根基,逐步修正思路。本人也算是抛砖引玉,希望更多的同仁参与提供更多的思路。
    本文暂时写到这里,有其他更新的探索,将陆续更新。

欢迎转载此文,转载时请注明文章来源:张元礼的博客 http://blog.csdn.net/vincetest
   

原创粉丝点击