app测试专题
- 格式:pptx
- 大小:2.17 MB
- 文档页数:87
第十六章手机App测试一、手机App测试的范围功能模块测试交叉事件测试性能测试安全测试兼容性测试安装/卸载测试接口测试网络测试二、手机App测试的方法1功能模块测试1.1运行App安装完成后的试运行,可正常打开软件。
App打开测试,是否有加载状态进度提示。
App打开速度测试,速度是否可观。
App页面间的切换是否流畅,逻辑是否正确注册✓用户名密码长度✓注册后的提示页面✓前台注册页面和后台的管理页面数据是否一致✓注册后,在后台管理中页面提示登录✓使用合法的用户登录系统。
✓系统是否允许多次非法的登录,是否有次数限制。
✓使用已经登录的账号登录系统是否正确处理。
✓使用禁用的账号登录系统是否正确处理。
✓用户名、口令(密码)错误或漏填时能否登录。
✓删除或修改后的用户,原用户登录。
✓不输入用户口令和用户名、重复点(确定或取消按钮)是否允许登录。
✓登录后,页面中登录信息。
✓页面中有注销按钮。
✓登录超时的处理。
注销✓注销原模块,新的模块系统能否正确处理。
✓终止注销能否返回原模块,原用户。
✓注销原用户,新用户系统能否正确处理。
✓使用错误的账号、口令、无权限的被禁用的账号进行注销。
1.2应用的前后台切换APP切换到后台,再回到App,检查是否停留在上一次操作界面。
APP切换到后台,再回到App,检查功能及应用状态是否正常。
App切换到后台,再回到前台时,注意程序是否崩溃,功能状态是否正常,尤其是对于从后台切换回前台数据有自动更新的时候。
手机锁屏解屏后进入App注意是否会崩溃,功能状态是否正常,尤其是对于从后台切换回前台数据有自动更新的时候。
当App使用过程中有电话进来中断后再切换到App,功能状态是否正常当杀掉App进程后,再开启App,App能否正常启动。
出现必须处理的提示框后,切换到后台,再切换回来,检查提示框是否还存在,有时候会出现应用自动跳过提示框的缺陷。
对于有数据交换的页面,每个页面都必需要进行前后台切换、锁屏的测试,这种页面最容易出现崩溃。
App稳定性测试⼀、什么是稳定性测试1:稳定性测试概念 稳定性测试就是指软件长时间的持续运⾏,系统版本是否稳定,是否能否持续的为⽤户提供服务。
稳定性测试其实也是性能测试范畴中的⼀种⽅式。
2:稳定性测试指标 异常的次数 异常的频率3:稳定性测试⼯具 1:⾸选Monkey Monkey是向系统发送随机的⽤户事件流(如按键输⼊、触摸屏输⼊和⼿势输⼊等),实现对正在开发的应⽤程序进⾏稳定性测试。
可以更好的模拟⽤户操作,确保App的稳定性。
通过Monkey程序模拟⽤户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进⾏压⼒测试,检测程序多久的时间会发⽣异常 2:MonkeyRunner monkeyRunner 对monkey 命令进⾏封装后的api3:Monkey 局限性 1)发送的事件⽆法指定,是随机发送的 2)测试的应⽤只能是app 3)Monkey虽然可以通过指令来发送事件,但是没有⽀持条件判断,也不⽀持读取待测界⾯的信息来执⾏验证操作4:Monkey原理Monkey 程序是由 Android 系统⾃带,使⽤ Java 语⾔写成,其本⾝是安卓系统下的⼀个monkey.jar⽂件。
在Android⽂件系统中的存放路径是: /system/framework/monkey.jar;Monkey.jar程序是由⼀个名为“monkey”的Shell脚本来启动执⾏,shell脚本在Android⽂件系统中的存放路径是:/system/bin/monkey;Monkey 启动⽅式:在 cmd 命令提⽰符⾥⾯输⼊命令⾏来启动 monkey 测试。
命令⾏:adb shell monkey——monkey.shell——monkey.jar——安卓进程——设备上执⾏测试⼆、如何⽤Monkey进⾏稳定性测试1:Monkey环境搭建 1)Android SDK环境:下载⽹址:/ 2)设备(真机/模拟器) 夜神、mumu等都可以2:Monkey⽀持参数1)连接设备 连接设备 设备:开启USB调试选项 通过在命令⾏输⼊adb devices来进⾏连接2)事件数 Monkey⽀持的所有命令:adb shell monkey查看 必选的命令:COUNT:事件数 通过事件数量来测试稳定性3)事件间隔时间设置 --throttle <milliseconds> 在事件之间插⼊固定延迟。
1.下列不属于应用程序框架层的是( D )。
A.Activity ManagerB.Window ManagerC.Content ProviderD.Surface Manager2.在RelativeLayout布局中(B)属性表示“在某个元素的上方“。
yout_aboveyout_belowyout_alignTopyout_alignParentTop3. 下列不是手机操作系统的是?(D)A. AndroidB. Window MobileC. Apple IPhone IOSD.windows vista 4.Android的VM虚拟机是哪个?(A)A A.Dalvik B.JVM C.KVM D. framework5. 下列选项是Activity启动的方法有(ACD)选择三项A. startActivityB.goToActivityC. startActivityForResultD.startActivityFromChild6. 关于Activity的描述,下面哪个是错误的?(AD)选择两项A. 一个Android程序中只能拥有一个Activity类B. Activity类都必须在Androidmaniefest.xml中进行声明C. 系统完全控制Activity的整个生命周期D. Activity类必须重载onCreate方法7. 下面哪个不是Android SDK中的ViewGroup(视图容器)(D )?A. LinearLayoutB. ListViewC. GridViewD. Button8. 下列哪个不是Activity的生命周期方法之一?(B)A. onCreateB. startActivityC. onStartD. onResume9. MediaPlayer对象从停止状态到播放状态调用的方法是()选择两项A. prepare()B. start()C. reset()D.release()10. android 中下列属于Intent的作用的是( C)A 实现应用程序间的数据共享B 是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失C 可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带D 处理一个应用程序整体性的工作11. 向SD卡中导入文件的方式有(AB)选择两项A 通过命令行导入文件B 通过Eclipse工具导入C 直接在模拟器中创建D 以上说法都不正确12.下列对视频播放说法正确的有(AB)选择两项A 可以使用MediaPlayerB 可以使用VideoViewC 可以使用SoundPoolD 以上说法都不正确13. 无线网络采用哪些介质传播(BC)选择两项A 空气B 无线电波C 红外线D 声波14.Mksdcard命令可以使用三种尺寸,下列哪个不是(D)A:字节B:KC:MD:G15. 在安卓平台上播放音频的方式为两种:(AC)选择两项A:适合短暂播放但对反应速度要求较高的SoundPoolB: 适合短暂播放但对反应速度要求较低的SoundPoolC: 常见的适合较长播放但对时间要求不高的MediaPlayeD: 常见的适合较长播放但对时间要求高的MediaPlaye 16.建立Socket连接时至少需要( A )A:一对套接字B:两对套接字C:不需要套接字D:三对套接字17. 下列不属于android布局的是( C )A、FrameLayoutB、LinearLayoutC、BorderLayoutD、TableLayoutE、RelativeLayout18. 关于android中播放视频的说法不对的是_CA,可以使用SurfaceView组件播视频B,可以使用VideoView组件播视频C,VideoView组件可以控制播放的位置和大小D,VideoView播放视频的格式可以是3gp19.下列关于如何使用Notification,不对的是_DA,notification需要NotificatinManager来管理B,使用NotificationManager的notify方法显示notification消息C,在显示Notification时可以设置通知时的默认发声,震动等D,Notification中有方法可以清除消息20. 拖动进度条组件是__CA,RatingBar B,ProgressBar C,SeekBar D,ScrollBar21.下列不属于service生命周期的方法是__CA,onCreate B,onDestroy C,onStop D,onStart22.下列哪个是AbsoluteLayout中特有的属性(B)A,android:layout_heightB,android:layout_xC,android:layout_aboveD,android:layout_toRightOf23. android虚拟设备的缩写是(A)A.AVDB.ADVc.APKD.ADI24. Math.round(11.5)等于多少(). Math.round(-11.5)等于多少( C ).A、11 ,-11B、11 ,-12C、12 ,-11D、12 ,-1225.下列程序段的输出结果是:(D)void complicatedexpression_r(){int x=20, y=30;boolean b;b=x>50&&y>60||x>50&&y<-60||x<-50&&y>60||x<-50&&y<-60;System.out.println(b);}A、trueB、falseC、1D、011.activity26.在android中使用Menu时可能需要重写的方法有(AB)。
App专项测试之功耗(电量)
⼀、测试点
功耗测试主要从以下⼏个⽅⾯⼊⼿进⾏测试:
测试⼿机安装⽬标APK前后待机功耗⽆明显差异。
常见使⽤场景中能够正常进⼊待机,待机电流在正常范围内。
长时间连续使⽤应⽤⽆异常耗电现象。
⼆、测试⽅法
功耗测试的⽅法分为两类,⼀类为软件测试,⼀类为硬件测试。
2.1 软件功耗
2.1 第三⽅⼯具,如⾦⼭电池管家之类的。
2.2 ⾃写⼯具进⾏
1. 基于android提供的PowerManager.WakeLock来进⾏;
2. 功耗的计算=CPU消耗+Wakelock消耗+数据传输消耗+GPS消耗+Wi-Fi连接消耗;
3. 通过 adbshell dumpsys battery来获取。
2.2 硬件测试功耗
⼀般使⽤万⽤表或者功耗仪进⾏测试,使⽤功耗仪测试的时候,需要制作假电池来进⾏的,有些不能拔插电池的⼿机还需要焊接才能进⾏功耗测试。
APP测试用例1. 登录功能测试1.1 正常登录•测试目标:确认用户可以使用正确的用户名和密码成功登录到APP •测试步骤:1.打开APP2.输入正确的用户名和密码3.点击登录按钮•预期结果:登录成功,并跳转到首页界面1.2 错误密码登录•测试目标:确认当用户输入错误的密码时,无法成功登录到APP •测试步骤:1.打开APP2.输入正确的用户名和错误的密码3.点击登录按钮•预期结果:登录失败,提示错误密码1.3 错误用户名登录•测试目标:确认当用户输入错误的用户名时,无法成功登录到APP •测试步骤:1.打开APP2.输入错误的用户名和正确的密码3.点击登录按钮•预期结果:登录失败,提示错误用户名2. 注册功能测试2.1 正常注册•测试目标:确认用户可以使用有效的邮箱地址和密码成功注册账户•测试步骤:1.打开APP2.点击注册按钮3.输入有效的邮箱地址和密码4.点击确认注册按钮•预期结果:注册成功,并自动登录到APP2.2 无效邮箱注册•测试目标:确认用户在注册时输入无效的邮箱地址时,无法成功注册•测试步骤:1.打开APP2.点击注册按钮3.输入无效的邮箱地址和密码4.点击确认注册按钮•预期结果:注册失败,提示无效邮箱地址2.3 弱密码注册•测试目标:确认用户在注册时输入弱密码时,无法成功注册•测试步骤:1.打开APP2.点击注册按钮3.输入有效的邮箱地址和弱密码(如123456)4.点击确认注册按钮•预期结果:注册失败,提示密码过于简单3. 首页功能测试3.1 显示内容•测试目标:确认首页能够正常显示各类内容•测试步骤:1.打开APP2.登录账号3.查看首页界面•预期结果:首页能够正常显示各类内容,如推荐文章、热门话题等3.2 点赞功能•测试目标:确认用户能够成功给内容点赞•测试步骤:1.打开APP2.登录账号3.在首页中选择一篇文章或者一个话题4.点击点赞按钮•预期结果:点赞成功,并显示点赞数量增加3.3 评论功能•测试目标:确认用户能够成功评论内容•测试步骤:1.打开APP2.登录账号3.在首页中选择一篇文章或者一个话题4.点击评论按钮5.输入评论内容6.点击发送按钮•预期结果:评论成功,并显示评论内容在页面中4. 设置功能测试4.1 修改个人信息•测试目标:确认用户能够成功修改个人信息•测试步骤:1.打开APP2.登录账号3.进入设置界面4.点击编辑个人信息按钮5.修改个人信息,如昵称、头像等6.点击保存按钮•预期结果:信息修改成功,并在页面中显示更新后的个人信息4.2 修改密码•测试目标:确认用户能够成功修改密码•测试步骤:1.打开APP2.登录账号3.进入设置界面4.点击修改密码按钮5.输入旧密码和新密码6.点击保存按钮•预期结果:密码修改成功,并可以使用新密码登录4.3 推送通知设置•测试目标:确认用户能够成功设置推送通知开关•测试步骤:1.打开APP2.登录账号3.进入设置界面4.打开或关闭推送通知开关5.点击保存按钮•预期结果:推送通知设置成功,并按照设置开关的状态接收通知总结以上是针对APP的测试用例,涵盖了登录、注册、首页展示、点赞、评论、个人信息修改、密码修改和推送通知设置等功能。
APP测试⾯试题分享(附带参考答案)1、Android四⼤组件Android四⼤基本组件:Activity、BroadcastReceiver⼴播接收器、ContentProvider内容提供者、Service服务。
Activity:应⽤程序中,⼀个Activity就相当于⼿机屏幕,它是⼀种可以包含⽤户界⾯的组件,主要⽤于和⽤户进⾏交互。
⼀个应⽤程序可以包含许多活动,⽐如事件的点击,⼀般都会触发⼀个新的Activity。
BroadcastReceiver⼴播接收器:应⽤可以使⽤它对外部事件进⾏过滤只对感兴趣的外部事件(如当电话呼⼊时,或者数据⽹络可⽤时)进⾏接收并做出响应。
⼴播接收器没有⽤户界⾯。
然⽽,它们可以启动⼀个activity或serice 来响应它们收到的信息,或者⽤NotificationManager来通知⽤户。
通知可以⽤很多种⽅式来吸引⽤户的注意⼒──闪动背灯、震动、播放声⾳等。
⼀般来说是在状态栏上放⼀个持久的图标,⽤户可以打开它并获取消息。
ContentProvider内容提供者:内容提供者主要⽤于在不同应⽤程序之间实现数据共享的功能,它提供了⼀套完整的机制,允许⼀个程序访问另⼀个程序中的数据,同时还能保证被访问数据的安全性。
只有需要在多个应⽤程序间共享数据时才需要内容提供者。
例如:通讯录数据被多个应⽤程序使⽤,且必须存储在⼀个内容提供者中。
它的好处:统⼀数据访问⽅式。
Service服务:是Android中实现程序后台运⾏的解决⽅案,它⾮常适合去执⾏那些不需要和⽤户交互⽽且还要长期运⾏的任务(⼀边打电话,后台挂着QQ)。
服务的运⾏不依赖于任何⽤户界⾯,即使程序被切换到后台,或者⽤户打开了另⼀个应⽤程序,服务仍然能够保持正常运⾏,不过服务并不是运⾏在⼀个独⽴的进程当中,⽽是依赖于创建服务时所在的应⽤程序进程。
当某个应⽤程序进程被杀掉后,所有依赖于该进程的服务也会停⽌运⾏(正在听⾳乐,然后把⾳乐程序退出)。
APP测试点(共5篇)第一篇:APP测试点1.功能性测试:——根据产品需求文档编写测试用例。
——软件设计文档编写用例。
注意:就是根据产品需求文档编写测试用例而进行测试。
2.兼容性测试: ——android版本的兼容性——手机分辨率兼容性——网络的兼容性:2G3G4GWIFI,弱网下、断网时——app跨版本的兼容性 1.适配性测试:1>.手机不同分辨率支持:客户端支持的分辨率等2>.手机不同版本的支持:2.34.04.4等;在测试计划中:需要安排单独的时间用于android不同系统的兼容性测试,包括2.0以下版本和4.0以上等3>.手机不同厂家系统的支持:不同厂家会有不同android系统,例如:小米,华为,锤子对市面上主流手机的支持4>.手机不同尺寸的支持:3.5到5.0屏幕在UI显示有区别,要支持最大到最小。
2.安装、卸载测试:1>.生成apk文件在真机上可以安装及卸载; 2>.Android手机端通用安装工具。
如:豌豆荚 3.在线升级测试: 1>.验证数字签名2>.升级后可以正常使用。
3>.在线跨版本升级。
3.性能测试:——压力测试:——电量流量测试:——cup、内存消耗:——app 启动时长——crash率——内存泄漏 4.网络测试:1.外网测试主要现实模拟客户使用网络环境,检验客户单程序在实际网若环境中使用情况及进行业务操作。
2.外网测试主要覆盖到wifi2G3G4G,.netwap、电信移动联通、所有可能的组合进行测试。
原则:1.尽可能全面覆盖用户的使用场景,测试用例中需要包含不同网络排列组合的各种可能。
2.还有模拟信号被屏蔽时候。
客户端的影响等。
还有做外包场景测试,在高山、丘陵、火车上等特殊环境下进行全面测试5.接口性测试:——client端和service端的交互——client端的数据更新和service端的数据是否一致——client 端更新时断开了。
app安全测试第一篇:什么是app安全测试?随着移动互联网的蓬勃发展,手机app已经成为人们生活中不可或缺的一部分。
不管是社交、购物、游戏、学习还是支付,我们都可以通过app轻松完成。
然而,正是由于手机app的使用频繁和便捷,导致了用户的隐私安全问题和信息泄露问题的日益严重。
为保障用户的安全,同时提高app开发商的信誉度,app安全测试变得越来越重要。
app安全测试是一种通过模拟黑客攻击的方式检测app安全漏洞的测试方式。
通过该测试,可以发现并修复app中存在的漏洞,提升app的安全性。
在进行app安全测试时,需要关注以下几个方面:1. 用户隐私用户的隐私是要特别保护的。
在测试过程中,务必要确保用户信息得到了完全保护。
2. 系统架构系统架构也是需要测试的重点之一。
测试人员应当确保开发人员已经充分考虑了系统架构的安全性,以免后期出现不必要的麻烦。
3. 数据安全数据安全也是一个重要的测试方面。
测试人员需对app所用的存储数据和传输数据进行检测,确保其完整性和安全性。
4. 稳定性稳定性也是测试考虑的重点之一。
在测试过程中,需要检测app是否存在崩溃等问题,以保证app可以正常运行。
总之,app安全测试是保障用户信息安全的必要措施。
在测试过程中,测试人员需要细致地考虑每一个方面,确保app 的安全性和可靠性,让用户可以放心地使用app。
第二篇:如何进行app安全测试?app安全测试是一项复杂的过程,需要细致的测试方案和专业的测试人员。
下面是一些可供参考的测试步骤:1. 需求分析在进行app安全测试之前,需要对app的需求进行充分分析,包括测试环境和测试工具的选择、测试人员的分配、测试用例的编写等等。
只有对需求进行充分分析,才能保证测试的高效、准确和全面。
2. 软件配置和设置在测试之前,应当确保测试人员已经配置好了所需软件和测试环境,并进行相应的设置。
这包括系统环境,测试工具和应用程序的配置,无线网络等。
软件测试试题及答案答案一、单项选择题(每题2分,共10分)1. 软件测试的目的是:A. 证明软件无缺陷B. 证明软件存在缺陷C. 证明软件符合需求规格D. 证明软件符合设计规格答案:B2. 黑盒测试的主要依据是:A. 程序内部逻辑B. 程序外部特性C. 程序数据结构D. 程序运行环境答案:B3. 以下哪个不是软件测试的阶段?A. 单元测试B. 集成测试C. 系统测试D. 维护测试答案:D4. 软件测试中,测试用例的主要目的是:A. 验证软件功能B. 验证软件性能C. 验证软件安全性D. 所有选项答案:D5. 以下哪个不是软件测试的类型?A. 功能测试B. 性能测试C. 压力测试D. 需求测试答案:D二、多项选择题(每题3分,共15分)1. 软件测试过程中可能遇到的问题包括:A. 缺陷B. 错误C. 故障D. 风险答案:ABCD2. 软件测试的基本原则包括:A. 测试显示存在缺陷B. 测试不能证明不存在缺陷C. 穷尽测试是不可能的D. 早期测试答案:ABCD3. 软件测试的目的是:A. 验证软件符合需求B. 验证软件符合设计C. 验证软件符合实现D. 验证软件符合标准答案:ABD4. 以下哪些是软件测试的方法?A. 静态测试B. 动态测试C. 黑盒测试D. 白盒测试答案:ABCD5. 软件测试的文档通常包括:A. 测试计划B. 测试用例C. 测试报告D. 用户手册答案:ABC三、判断题(每题1分,共10分)1. 软件测试可以完全替代用户测试。
(错误)2. 软件测试的目的是发现尽可能多的缺陷。
(正确)3. 软件测试可以在软件开发过程的任何阶段进行。
(正确)4. 软件测试可以提高软件的可靠性。
(正确)5. 软件测试可以降低软件维护的成本。
(正确)6. 软件测试可以证明软件没有缺陷。
(错误)7. 软件测试只能发现软件中的错误。
(错误)8. 软件测试可以提高用户对软件的满意度。
(正确)9. 软件测试可以减少软件的缺陷。
app考试试题考试时间:120分钟总分:100分一、选择题(每题2分,共20分)1. 以下哪个选项是移动应用程序(App)的主要特点?A. 需要在特定操作系统上运行B. 只能在网页上运行C. 只能在特定硬件上运行D. 只能在特定软件上运行2. App的更新通常是为了:A. 增加新的功能B. 减少内存占用C. 降低用户体验D. 减少用户数量3. 下列哪个不是App开发中常用的编程语言?A. JavaB. SwiftC. PythonD. Objective-C4. App的用户体验(UX)设计中,以下哪项不是重点考虑的因素?A. 界面美观B. 操作简便C. 程序大小D. 响应速度5. 对于App的安全性,以下哪项措施不是必要的?A. 数据加密B. 权限管理C. 频繁更新D. 强制用户使用复杂密码二、填空题(每空1分,共10分)6. 当App需要访问用户设备上的数据时,通常会请求______权限。
7. 一个App的生命周期管理包括了从______到卸载的整个过程。
8. 在App开发中,______是指App在后台运行时,仍然能够接收到推送通知。
9. App的测试通常包括单元测试、集成测试、______和用户接受测试。
10. App的商业模式可能包括广告、订阅、一次性购买、______等。
三、简答题(每题10分,共20分)11. 请简述App开发过程中,为何需要进行多平台兼容性测试?12. 描述App的隐私政策通常包含哪些内容,并解释其重要性。
四、案例分析题(每题15分,共30分)13. 假设你是一个App开发者,你的App需要实现以下功能:用户可以通过App预订电影票。
请描述你需要考虑的技术实现方案和可能面临的挑战。
14. 请分析一个App在用户隐私保护方面可能存在的问题,并提出改进建议。
五、论述题(20分)15. 论述App在教育领域的应用及其对传统教育模式的影响。
考试结束,请考生停止答题,并将试卷交给监考老师。