测试范围包括安全测试、1安全测试1.1数据安全性1)当将密码或其他的敏感数据输人到应用程序时,其不会被储存在设备中,同时密码也不会被解码2)输人的密码将不以明文形式进行显示3)密码,信用卡明细,或其他的敏感数据将不被储存在它们预输人的位置上4)不同的应用程序的个人身份证或密码长度必需至少在4一8个数字长度之间5)当应用程序处理信用卡明细,或其他的敏感数据时,不以明文形式将数据写到其它单独的文件或者临时文件中。以6)防止应用程序异常终止而又没有侧除它的临时文件,文件可能遭受人侵者的袭击,然后读取这些数据信息。7)当将敏感数据输人到应用程序时,其不会被储存在设备中8)备份应该加密,恢复数据应考虑恢复过程的异常�通讯中断等,数据恢复后再使用前应该经过校验9)应用程序应考虑系统或者虚拟机器产生的用户提示信息或安全替告10)应用程序不能忽略系统或者虚拟机器产生的用户提示信息或安全警告,更不能在安全警告显示前,,利用显示误导信息欺骗用户,应用程序不应该模拟进行安全警告误导用户11)在数据删除之前,应用程序应当通知用户或者应用程序提供一个“取消”命令的操作12)“取消”命令操作能够按照设计要求实现其功能13)应用程序应当能够处理当不允许应用软件连接到个人信息管理的情况14)当进行读或写用户信息操作时,应用程序将会向用户发送一个操作错误的提示信息15)在没有用户明确许可的前提下不损坏侧除个人信息管理应用程序中的任何内容Μ16)应用程序读和写数据正确。17)应用程序应当有异常保护。18)如果数据库中重要的数据正要被重写,应及时告知用户19)能合理地处理出现的错误20)意外情况下应提示用户2.1.4通讯安全性1)在运行其软件过程中,如果有来电、SMS、EMS、MMS、蓝牙、红外等通讯或充电时,是否能暂停程序,优先处理通信,并在处理完毕后能正常恢复软件,继续其原来的功能2)当创立连接时,应用程序能够处理因为网络连接中断,进而告诉用户连接中断的情况3)应能处理通讯延时或中断4)应用程序将保持工作到通讯超时,进而发送给用户一个错误信息指示有连接错误5)应能处理网络异常和及时将异常情况通报用户6)应用程序关闭或网络连接不再使用时应及时关闭)断开7)HTTP、HTTPS覆盖测试--App和后台服务一般都是通过HTTP来交互的,验证HTTP环境下是否正常;--公共免费网络环境中(如:麦当劳、星巴克等)都要输入用户名和密码,通过SSL认证来访问网络,需要对使用HTTPClient的library异常作捕获处理。2.1.5人机接口安全性1)返回菜单总保持可用2)命令有优先权顺序3)声音的设置不影响应用程序的功能4)应用程序必需利用目标设备适用的全屏尺寸来显示上述内容5)应用程序必需能够处理不可预知的用户操作,例如错误的操作和同时按下多个键2.3UI测试测试用户界面(如菜单、对话框、窗口和其它可规控件)布局、风格是否满足客户要求、文字是否正确、页面是否美观、文字、图片组合是否完美、操作是否友好等。UI测试的目标是确保用户界面会通过测试对象的功能来为用户提供相应的访问或浏觅功能。确保用户界面符合公司或行业的标准。包括用户友好性、人性化、易操作性测试。2.3.1导航测试1)按钮、对话框、列表和窗口等;或在不同的连接页面之间需要导航2)是否易于导航,导航是否直观3)是否需要搜索引擎4)导航帮助是否准确直观5)导航与页面结构、菜单、连接页面的风格是否一致2.3.2图形测试1)横向比较。各控件操作方式统一2)自适应界面设计,内容根据窗口大小自适应3)页面标签风格是否统一4)页面是否美观5)页面的图片应有其实际意义而要求整体有序美观6)图片质量要高且图片尺寸在设计符合要求的情况下应尽量小7)界面整体使用的颜色不宜过多2.3.3内容测试1)输入框说明文字的内容与系统功能是否一致2)文字长度是否加以限制3)文字内容是否表意不明4)是否有错别字5)信息是否为中文显示6)是否有敏感性词汇、关键词7)是否有敏感性图片,如:涉及版权、专利、隐私等图片2.4功能测试根据软件说明或用户需求验证App的各个功能实现,采用如下方法实现并评估功能测试过程:1)采用时间、地点、对象、行为和背景五元素或业务分析等方法分析、提炼App的用户使用场景,对比说明或需求,整理出内在、外在及非功能直接相关的需求,构建测试点,并明确测试标准,若用户需求中无明确标准遵循,则需要参考行业或相关国际标准或准则。2)根据被测功能点的特性列丼出相应类型的测试用例对其进行覆盖,如;涉及输入的地方需要考虑等价、边界、负面、异常或非法、场景回滚、关联测试等测试类型对其进行覆盖。3)在测试实现的各个阶段跟踪测试实现与需求输入的覆盖情况,及时修正业务或需求理解错误。2.4.1运行1)App安装完成后的试运行,可正常打开软件。2)App打开测试,是否有加载状态进度提示。3)App打开速度测试,速度是否可观。4)App页面间的切换是否流畅,逻辑是否正确5)注册--同表单编辑页面--用户名密码长度--注册后的提示页面--前台注册页面和后台的管理页面数据是否一致--注册后,在后台管理中页面提示6)登录--使用合法的用户登录系统。--系统是否允许多次非法的登陆,是否有次数限制。--使用已经登陆的账号登陆系统是否正确处理。--使用禁用的账号登陆系统是否正确处理。--用户名、口令(密码)错误或漏填时能否登陆。--删除或修改后的用户,原用户登陆。--不输入用户口令和用户、重复点(确定或取消按钮)是否允许登陆。--登陆后,页面中登陆信息。--页面中有注销按钮。--登陆超时的处理。7)注销--注销原模块,新的模块系统能否正确处理。--终止注销能否返回原模块,原用户。--注销原用户,新用户系统能否正确处理。--使用错误的账号、口令、无权限的被禁用的账号进行注销2.4.2应用的前后台切换1)APP切换到后台,再回到app,检查是否停留在上一次操作界面。2)APP切换到后台,再回到app,检查功能及应用状态是否正常,IOS4和IOS5的版本的处理机制有的不一样。3)app切换到后台,再回到前台时,注意程序是否崩溃,功能状态是否正常,尤其是对于从后台切换回前台数据有自动更新的时候。4)手机锁屏解屏后进入app注意是否会崩溃,功能状态是否正常,尤其是对于从后台切换回前台数据有自动更新的时候。5)当App使用过程中有电话进来中断后再切换到app,功能状态是否正常6)当杀掉app进程后,再开启app,app能否正常启动。7)出现必须处理的提示框后,切换到后台,再切换回来,检查提示框是否还存在,有时候会出现应用自动跳过提示框的缺陷。8)对于有数据交换的页面,每个页面都必需要进行前后台切换、锁屏的测试,这种页面最容易出现崩溃。2.4.3免登录很多应用提供免登录功能,当应用开启时自动以上一次登录的用户身份来使用app.1)app有免登录功能时,需要考虑IOS版本差异。2)考虑无网络情况时能否正常进入免登录状态。3)切换用户登录后,要校验用户登录信息及数据内容是否相应更新,确保原用户退出。4)根据MTOP的现有规则,一个帐户只允许登录一台机器。所以,需要检查一个帐户登录多台手机的情况。原手机里的用户需要被踢出,给出友好提示。5)app切换到后台,再切回前台的校验6)切换到后台,再切换回前台的测试7)密码更换后,检查有数据交换时是否进行了有效身份的校验8)支持自动登录的应用在进行数据交换时,检查系统是否能自动登录成功并且数据操作无误。9)检查用户主动退出登录后,下次启动app,应停留在登录界面2.4.4数据更新根据应用的业务规则,以及数据更新量的情况,来确定最优的数据更新方案。1)需要确定哪些地方需要提供手动刷新,哪些地方需要自动刷新,哪些地方需要手动+自动刷新。2)确定哪些地方从后台切换回前台时需要进行数据更新。3)根据业务、速度及流量的合理分配,确定哪些内容需要实时更新,哪些需要定时更新。4)确定数据展示部分的处理逻辑,是每次从服务端请求,还是有缓存到本地,这样才能有针对性的进行相应测试。5)检查有数据交换的地方,均有相应的异常处理。2.4.5离线浏览很多应用会支持离线浏览,即在本地客户端会缓存一部分数据供用户查看。1)在无网络情况可以浏览本地数据2)退出app再开启app时能正常浏览3)切换到后台再切回前台可以正常浏览4)锁屏后再解屏回到应用前台可以正常浏览5)在对服务端的数据有更新时会给予离线的相应提示2.4.6App更新1)当客户端有新版本时,有更新提示。2)当版本为非强制升级版时,用户可以取消更新,老版本能正常使用。用户在下次启动app时,仍能出现更新提示。3)当版本为强制升级版时,当给出强制更新后用户没有做更新时,退出客户端。下次启动app时,仍出现强制升级提示。4)当客户端有新版本时,在本地不删除客户端的情况下,直接更新检查是否能正常更新。5)当客户端有新版本时,在本地不删除客户端的情况下,检查更新后的客户端功能是否是新版本。6)当客户端有新版本时,在本地不删除客户端的情况下,检查资源同名文件如图片是否能正常更新成最新版本。如果以上无法更新成功的,也都属于缺陷。2.4.7定位、照相机服务1)App有用到相机,定位服务时,需要注意系统版本差异2)有用到定位服务、照相机服务的地方,需要进行前后台的切换测试,检查应用是否正常。3)当定位服务没有开启时,使用定位服务,会友好性弹出是否允许设置定位提示。当确定允许开启定位时,能自动跳转到定位设置中开启定位服务。4)测试定位、照相机服务时,需要采用真机进行测试。2.4.8时间测试客户端可以自行设置手机的时区、时间,因此需要校验该设置对app的影响。--中国为东8区,所以当手机设置的时间非东8区时,查看需要显示时间的地方,时间是否展示正确,应用功能是否正常。时间一般需要根据服务器时间再转换成客户端对应的时区来展示,这样的用户体验比较好。比如发表一篇微博在服务端记录的是10:00,此时,华盛顿时间为22:00,客户端去浏览时,如果设置的是华盛顿时间,则显示的发表时间即为22:00,当时间设回东8区时间时,再查看则显示为10:00。2.4.9PUSH测试1)检查push消息是否按照指定的业务规则发送2)检查不接受推送消息时,检查用户不会再接收到push.3)如果用户设置了免打扰的时间段,检查在免打扰时间段内,用户接收不到PUSH。在非免打扰时间段,用户能正常收到push。4)当push消息是针对登录用户的时候,需要检查收到的push与用户身份是否相符,没有错误地将其它人的消息推送过来。一般情况下,只对手机上最后一个登录用户进行消息推送。5)测试push时,需要采用真机进行测试。2.5性能测试评估App的时间和空间特性:1)极限测试:在各种边界压力情况下,如电池、存储、网速等,验证App是否能正确响应。--内存满时安装App--运行App时手机断电--运行App时断掉网络2)响应能力测试:测试App中的各类操作是否满足用户响应时间要求。--App安装、卸载的响应时间--App各类功能性操作的影响时间3)压力测试:反复/长期操作下、系统资源是否占用异常。--App反复进行安装卸载,查看系统资源是否正常--其他功能反复进行操作,查看系统资源是否正常4)性能评估:评估典型用户应用场景下,系统资源的使用情况。5)Benchmark测试(基线测试):与竞争产品的Benchmarking,产品演变对比测试等。2.6交叉事件测试针对智能终端应用的服务等级划分方式及实时特性所提出的测试方法。交叉测试又叫事件或冲突测试,是指一个功能正在执行过程中,同时另外一个事件或操作对该过程进行干扰的测试。如;App在前/后台运行状态时与来电、文件下载、音乐收听等关键运用的交互情况测试等。交叉事件测试非常重要,能发现很多应用中潜在的性能问题。1)多个App同时运行是否影响正常功能2)App运行时前/后台切换是否影响正常功能3)App运行时拨打/接听电话4)App运行时发送/接收信息5)App运行时发送/收取邮件6)App运行时切换网络(2G、3