移动App测试培训课件.pptx
《移动App测试培训课件.pptx》由会员分享,可在线阅读,更多相关《移动App测试培训课件.pptx(98页珍藏版)》请在三一办公上搜索。
1、手机APP测试培训,曹向志 大开科技&大开测试,2022/11/6,1,各种测试类型简介,1,安卓手机测试(59),2,安卓常用测试命令(76),3,手机自动化测试,4,Contents,目,2022/11/6,2,录,移动应用与传统PC应用的区别,主流手机操作系统,4,手机测试分类,5,手机测试与传统测试的区别,6,手机软件测试定义,7,手机软件测试就是符合多种网络,不同系统不同分辨率下发现软件缺陷,并保证提高软件质量的过程。,什么是手机软件测试?,测试流程,8,接收版本,UI测试:核对rp/效果图,功能测试:核对需求文档,兼容性测试、性能压力测试,尽快申请到正式环境下测试,后台数据统计测试
2、,用户行为统计测试,进入正式环境,即试用行,仍然为测试环境,回归测试,发送上线报告,主要测试策略,9,安装、卸载测试,10,UI测试,11,测试用户界面(如菜单、对话框、窗口和其它可规控件)布局、风格是否满足客户要求、文字是否正确、页面是否美观、文字、图片组合是否完美、操作是否友好等。,功能测试,12,App安装完成后的试运行,可正常打开软件。App打开测试,是否有加载状态进度提示。App打开速度测试,速度是否可观。App页面间的切换是否流畅,逻辑是否正确注册登录注销,APP切换到后台,再回到app,检查是否停留在上一次操作界面。APP切换到后台,再回到app,检查功能及应用状态是否正常,ap
3、p切换到后台,再回到前台时,注意程序是否崩溃,功能状态是否正常。手机锁屏解屏后进入app注意是否会崩溃,功能状态是否正常。当App使用过程中有电话进来中断后再切换到app,功能状态是否正常当杀掉app进程后,再开启app,app能否正常启动。出现必须处理的提示框后,切换到后台,再切换回来,检查提示框是否还存在,有时候会出现应用自动跳过提示框的缺陷。对于有数据交换的页面,每个页面都必需要进行前后台切换、锁屏的测试,这种页面最容易出现崩溃。,很多应用提供免登录功能,当应用开启时自动以上一次登录的用户身份来使用app。app有免登录功能时,需要考虑版本差异。考虑无网络情况时能否正常进入免登录状态。切
4、换用户登录后,要校验用户登录信息及数据内容是否相应更新,确保原用户退出。根据现有规则,一个帐户只允许登录一台机器。所以,需要检查一个帐户登录多台手机的情况。原手机里的用户需要被踢出,给出友好提示。app切换到后台,再切回前台的校验切换到后台,再切换回前台的测试密码更换后,检查有数据交换时是否进行了有效身份的校验支持自动登录的应用在进行数据交换时,检查系统是否能自动登录成功并且数据操作无误。检查用户主动退出登录后,下次启动app,应停留在登录界面,需要确定哪些地方需要提供手动刷新,哪些地方需要自动刷新,哪些地方需要手动+自动刷新。确定哪些地方从后台切换回前台时需要进行数据更新。根据业务、速度及流
5、量的合理分配,确定哪些内容需要实时更新,哪些需要定时更新。确定数据展示部分的处理逻辑,是每次从服务端请求,还是有缓存到本地,这样才能有针对性的进行相应测试。检查有数据交换的地方,均有相应的异常处理,很多应用会支持离线浏览,即在本地客户端会缓存一部分数据供用户查看。在无网络情况可以浏览本地数据退出app再开启app时能正常浏览切换到后台再切回前台可以正常浏览锁屏后再解屏回到应用前台可以正常浏览在对服务端的数据有更新时会给予离线的相应提示,当客户端有新版本时,有更新提示。当版本为非强制升级版时,用户可以取消更新,老版本能正常使用。用户在下次启动app时,仍能出现更新提示。当版本为强制升级版时,当给
6、出强制更新后用户没有做更新时,退出客户端。下次启动app时,仍出现强制升级提示。当客户端有新版本时,在本地不删除客户端的情况下,直接更新检查是否能正常更新。当客户端有新版本时,在本地不删除客户端的情况下,检查更新后的客户端功能是否是新版本。当客户端有新版本时,在本地不删除客户端的情况下,检查资源同名文件如图片是否能正常更新成最新版本。如果以上无法更新成功的,也都属于缺陷,App有用到相机,定位服务时,需要注意系统版本差异有用到定位服务、照相机服务的地方,需要进行前后台的切换测试,检查应用是否正常。当定位服务没有开启时,使用定位服务,会友好性弹出是否允许设置定位提示。当确定允许开启定位时,能自动
7、跳转到定位设置中开启定位服务。测试定位、照相机服务时,需要采用真机进行测试,客户端可以自行设置手机的时区、时间,因此需要校验该设置对app的影响。-中国为东8区,所以当手机设置的时间非东8区时,查看需要显示时间的地方,时间是否展示正确,应用功能是否正常。时间一般需要根据服务器时间再转换成客户端对应的时区来展示,这样的用户体验比较好。比如发表一篇微博在服务端记录的是10:00,此时,华盛顿时间为22:00,客户端去浏览时,如果设置的是华盛顿时间,则显示的发表时间即为22:00,当时间设回东8区时间时,再查看则显示为10:00。,检查push消息是否按照指定的业务规则发送检查不接受推送消息时,检查
8、用户不会再接收到push.如果用户设置了免打扰的时间段,检查在免打扰时间段内,用户接收不到PUSH。在非免打扰时间段,用户能正常收到push。当push消息是针对登录用户的时候,需要检查收到的push与用户身份是否相符,没有错误地将其它人的消息推送过来。一般情况下,只对手机上最后一个登录用户进行消息推送。测试push时,需要采用真机进行测试。,性能测试,13,极限测试,在各种边界压力情况下,如电池、存储、网速等,验证App是否能正确响应-内存满时安装App;-运行App时手机断电;-运行App时断掉网络。,响应能力测试,测试App中的各类操作是否满足用户响应时间要求-App安装、卸载的响应时间
9、;-App各类功能性操作的影响时间。,压力测试,反复长期操作下、系统资源是否占用异常-APP反复进行安装、卸载,查看系统资源是否正常;-其他功能反复进行操作,查看系统资源是否正常,性能评估:,评估典型用户应用场景下,系统资源的使用情况,基线测试,与竞争产品的Benchmarking,产品演变对比测试等,设定性能基准,交叉事件测试,14,交叉测试又叫事件或冲突测试,是指一个功能正在执行过程中,同时另外一个事件或操作对该过程进行干扰的测试。 如:App在前/后台运行状态时与来电、文件下载、音乐收听等关键运用的交互情况测试等。交叉事件测试非常重要,能发现很多应用中潜在的性能问题。,兼容性测试,15,
10、升级、更新测试,16,新版本发布后,配合不同网络环境的自动更新提示及下载、安装、更新、启动、运行的验证测试,用户体验测试,以主观的普通消费者的角度去感知产品或服务的舒适、有用、易用、友好亲切程度。通过不同个体、独立空间和非经验的统计复用方式去有效评价产品的体验特性提出修改意见提升产品的潜在客户满意度。,17,硬件环境测试,18,接口测试,服务端一般会提供JSON格式的数据给客户端,所以我们在服务端需要进行接口测试,确保服务端提供的接口并转换的JSON内容正确,对分支、异常流有相应的返回值。此块测试可以采用itest框架进行测试。最方便的是采用httpclient进行接口测试。 进行服务端测试时
11、,需要开发提供一份接口文档,19,(JavaScript Object Notation) 是一种轻量级的数据交换格,Itest测试框架是TaoBao测试部门开发的一套单元测试框架,HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。,客户端数据库测试,20,一般的增、删、改、查测试。,在业务需要从服务端取回数据保存到客户端的时候,客户端能否将数据保存到本地,当表不存在时是否能自动创建,当数据库表被删除后能否再自建,数据是否还能自动从服务端中获
12、取回来并保存。,当业务对数据进行了修改、删除后,客户端和服务端是否会有相应的更新。,当业务需要从客户端取数据时,检查客户端数据存在时,app数据是否能自动从客户端数据中取出,还是仍然会从服务器端获取?检查客户端数据不存在时,app数据能否自动从服务器端获取到并保存到客户端,安全测试,21,扣费风险:包括发送短信、拨打电话、连接网络等隐私泄露风险:包括访问手机信息、访问联系人信息等对App的输入有效性校验、认证、授权、敏感数据存储、数据加密等方面进行检测限制/允许使用手机功能接入互联网允许使用手机发送接受信息功能限制/允许应用程序来注册自动启动应用程序限制或使用本地连接限制/允许使用手机拍照或录
13、音限制/允许使用手机读取用户数据限制/允许使用手机写人用户数据检测App的用户授权级别、数据泄漏、非法授权访问等,应用程序应能正确安装到设备驱动程序上能够在安装设备驱动程序上找到应用程序的相应图标是否包含数字签名信息JAD文件和JAR包中包含的所有托管属性及其值必需是正确的JAD文件显示的资料内容与应用程序显示的资料内容应一致安装路径应能指定没有用户的允许,应用程序不能预先设定自动启动卸载是否安全,其安装进去的文件是否全部卸载卸载用户使用过程中产生的文件是否有提示其修改的配置信息是否复原卸载是否影响其他软件的功能卸载应该移除所有的文件,当将密码或其他的敏感数据输入到应用程序时其不会被储存在设备
14、中,同时密码也不会被解码输人的密码将不以明文形式进行显示密码、信用卡明细、或其他的敏感数据将不被储存在它们预输入的位置上不同的应用程序的个人身份证或密码长度必需至少在4-8个数字长度之间当应用程序处理敏感数据时,不以明文形式将数据写到其它单独的文件或者临时文件中。以防止应用程序异常终止而又没有删除它的临时文件,文件可能遭受入侵者的袭击,然后读取这些数据信息。备份应该加密,恢复数据应考虑恢复过程的异常通讯中断等,数据恢复后再使用前应该经过校验应用程序应考虑系统或者虚拟机器产生的用户提示信息或安全警告在数据删除之前,应用程序应当通知用户或者应用程序提供一个“取消”命令的操作, “取消”命令操作能够
15、按照设计要求实现其功能应用程序应当能够处理当不允许应用软件连接到个人信息管理的情况在没有用户明确许可的前提下不损坏、删除个人信息管理应用程序中的任何内容如果数据库中重要的数据正要被重写,应及时告知用户,在运行其软件过程中,如果有来电、SMS、EMS、MMS、蓝牙、红外等通讯或充电时,是否能暂停程序,优先处理通信,并在处理完毕后能正常恢复软件,继续其原来的功能当创立连接时,应用程序能够处理因为网络连接中断,进而告诉用户连接中断的情况应能处理通讯延时或中断应用程序将保持工作到通讯超时,进而发送给用户一个错误信息指示有连接错误,返回菜单总保持可用声音的设置不影响应用程序的功能应用程序必需能够处理不可
16、预知的用户操作,例如错误的操作和同时按下多个键,功能测试,功能测试主要是程序逻辑及相关业务点测试。一、应充分考虑各种边缘情况,边界状态。二、应多站在用户的角度考虑程序的设计是否合理,是否充分满足用户的需求。,22,适配测试-1,机型适配:苹果的机型:iphone、iPod Touch和iPad,Iphone:iphone3G/3GS/4/4s/5/5s/5c/6/6S,iPod Touch:Touch1/2/3/4/5/6,iPad:iPad1/2/The new iPad/4/Mini/iPad Air。机型适配重点在于硬件设备的分辨率和硬件资源等。例如,如果app没有强依赖某个硬件资源,那
17、么机型适配主要考虑分辨率,反之,app强依依赖某个硬件资源,如摄像头(对焦)、GPS定位、陀螺仪等,那么需要根据具体设备来适配。,23,适配测试-2,固件适配(1)不同设备所能够安装的系统范围不同; (2)不同系统呈现不同特性; 目前主流的固件适配主要包括4.3.x/5.x/6.x/7.x,固件适配需要结合不同系统所具有特性来进行,但最终都是保证app在支持的固件上正常工作。 通常,苹果发布的手机一般都是当前最新的系统,因此,对于iphone5s,其固件只有7.x,依此类推,iphone4s通常不存在4.x的系统(不考虑降级因素),机型适配和固件适配需要综合考虑。固件范围通常可选择=4.3。,
18、24,适配测试-3,屏幕尺寸、分辨率适配通常iphone的机型适配可选三款手机来进行,iphone3GS45或iphone3GS4s5。如果app使用了摄像头,还需要考虑不同像素、对焦因素的机型以及是否支持闪光灯(3GStouchipad均不支持)。 各机型具体参数详见下表,适配时根据具体app来决定适配范围。,25,2022/11/6,26,IC卡属性读取,2022/11/6,27,IC卡补登圈存,2022/11/6,28,IC卡指定账户圈存,2022/11/6,29,IC 卡圈存冲正交易,静态分析-1,静态分析是指对开发的代码执行静态代码扫描,从而发现代码中存在逻辑、内存等缺陷。静态分析可
19、以通过Xcode或外部插件扫描来实现。 通过xcode的ProductAnalyze来扫描,如下图所示。,30,静态分析-2,通常,可以扫描出以下四种类型缺陷: 逻辑缺陷,如访问未初始化的变量或对空指针的引用等; 多余的变量,该类变量定义后,永远不会被访问; 内存管理缺陷,一般为内存泄露; API使用缺陷,由于未遵循使用的框架或类库相关规范造成的;,31,静态分析-3,示例:a. 多余变量,代码中的statusCode仅作简单赋值操作,属于多余变量; b. 内存泄露,newString对象未被释放,发生内存泄露;,32,静态分析-4,一般情况下,静态分析中以下三种类型的提示较为严重,可能引起严
20、重问题: 内存泄漏隐患提示: Potential Leak of an object allocated on line 数据赋值隐患提示: The left operand of is a garbage value; 对象引用隐患提示: Reference-Counted object is used after it is released;,33,网络测试-1,网络根据网速可分为网络良好、弱网络、无网络三种情况。此项测试主要考虑弱网络和无网络,测试前需要充分了解页面在什么情况向服务端作请求,从而作相应的测试。 无网络测试,需要在页面作请求前关闭移动设备网络,观察程序是否作友好提示。弱网
21、络测试要复杂得多,存在以下三种类型: (1)页面等待请求数据,数据返回后,页面呈现是否正常; (2)页面在发出请求后,离开该页面,数据返回后,程序是否正常处理,是否会发生crash; (3)页面等待请求数据,造成超时,页面是否作友好提示;,34,网络测试-2,弱网络可通过真机或模拟器来实现。真机可以绑定至指定的服务器,作适当延时,来模拟弱网络环境。绑定有以下两种方式: 越狱手机可通过修改etc目录下的hosts来实现,具体操作可参见测试工具iFile的使用说明; 任何手机都可通过wifi绑定至指定端口的代理服务器。模拟器可通过network link condition工具来模拟各种网络情况,
22、设置上传和下载的带宽、丢包率、延时等,以下给出弱网络建议参数,测试时可根据实际情况来决定。,35,网络测试-3,网络超时可通过以下方式来实现,根据实际需要来选择: 绑定未知服务器,构成网络超时,适用所有类型; 对某类域名作host绑定,适用越狱机器; 绑定代理服务器,延时某个请求的时间; 修改程序代码,改变某个请求的链接。 实际应用场景中,还需要考虑网络之间的切换,具体切换类型见下表。有网络-无网络无网络-有网络3G-4G4G-3G3G-wifiWifi-3G4G-wifiWifi-4G,36,低内存警告测试-1,系统的内存警告分为四种,定义如下: typedef enum OSMemoryN
23、otificationLevelAny = -1, OSMemoryNotificationLevelNormal = 0, OSMemoryNotificationLevelWarning = 1, OSMemoryNotificationLevelUrgent = 2, OSMemoryNotificationLevelCritical = 3 OSMemoryNotificationLevel; iOS的低内存警告是系统在低内存下向程序发出的友好提示,程序通常会先调用AppDelegate中的applicationDidReceiveMemoryWarning,接着通知各ViewCont
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 移动 App 测试 培训 课件
链接地址:https://www.31ppt.com/p-1297610.html