如何测试app软件在手机中的使用情况?
测试有几下几类:
一,非功能测试
二,功能测试
三,客户端性能测试
四,兼容性测试
五,服务器性能测试
六,安全性测试
手机APP软件测试点详解:
功能测试:手机软件的基本功能。倒不一定完全由测试人员来完全执行,但却是所有测试中最重要的,需要测试人员做很好的测试策略和职责划分。
稳定性测试:大多数手机应用是需要保证能够稳定运行一定时间的(尤其是对于一些记事类应用),而且在应用的运行状态发生切换后需要继续保持当前的状态,不出现闪退。
性能测试:这部分分为两个方面,一部分是后台服务的性能测试(API的响应时间和响应报文大小),一部分是应用自身的性能情况(占用CPU、内存、I/O、电量情况,以及页面到页面之间的切换速度,如果是游戏或动画,还要保证能够在一定的帧率以上)。
安全测试:关键的机密数据连接有没有走加密连接;本地数据库有没有做加密处理,是否会被其他恶意应用读取;后台服务的接口是否安全,会不会受SQL注入的影响;应用有没有做混淆,会不会被逆向以及会不会在渠道方被修改重新签名挂马;敏感数据是否存在了SD Card上等等。
软件测试教程之手机软件测试方法*:兼容性测试
针对App通常会考虑这些方面:
1)操作系统版本
包括Andoird版本,iOS版本
2)屏幕分辨率
android 800*480, 960*640,1280*720(720p),1920*1080(1080p),2560*1440(2k).
对于iOS,考虑最近几代机型对应的分辨率即可.
3)不同厂家的ROM
不同厂家的ROM,大多厂家都对android 系统进行了定制、实际中会遇到例如调用相机和底层服务出现的不兼容问题以及摇一摇遇到的不同手机对于方向和重力传感器灵敏度设置不同的问题.
4) 网络类型
网络类型通常考虑wifi,2g,3g4g下的功能情况。另外针对m版网站考虑不同浏览器类型和屏幕分辨率.
第二:流量测试
在移动产品的测试中,很有必要对App使用的流量进行度量,大致来说,流量可以从用户使用的的相关性角度分为:一类是用户的操作直接导致的流量消耗;另一类是后台,即在用户没有直接使用情况下的流量消耗。
流量的测试方法:
1. 基于系统自带功能.
eg android proc/uid_stat/{uid} /tcp_send
android proc/uid_stat/{uid} /tcp_rcv
2. 通过API或者系统埋点来获取数据。
3. 通用的流量测试方法:手机抓包,或者wifi代理(Fiddler, Charles)。
常见的流量节省方法:
1. 数据压缩。
压缩包含接口文本数据的压缩,js文件的压缩及图片的压缩。
2. 不同数据格式的采用
例如采用JSON格式作为接口数据返回格式通常比XML格式要小。
3. 控制访问的频次
这个主要针对后台数据上报,PUSH消息检查等定时机制的。
4. 只获取必要的数据
有时候APP一页的内容非常多,而用户可能只会看一部分,过多的从后台拉去数据就是浪费,所以可以采用分屏加载或者懒加载的方式来减少流量消耗。
5. 缓存
可将图片,js等数据暂存起来,但由于手机存储空间有限,也需要控制整个缓存大小,并给用户提供清理缓存的选项。
6. 针对不同网络类型设计不同的访问策略
有些APP不同的网络类型返回的内容不一样。
第三:电量测试
在电器电池技术没有取得巨大突破前提下,这方面始终会存在一些瓶颈,如果一些App架构设计的不好,或者代码偶缺陷,就可能导致电量消耗比较高,所以电量测试也是很重要的。
工具 GSam Battery Mo
nitor Pro.
第四:弱网络测试
移动互联网产品相比PC互联网产品,有一个特点是前者使用的网络比较多样,除了Wif之外,很多时候是在移动网络下使用的,移动网络遇到的情况又比较复杂,比如地铁、隧道、 体育 场等。所以网络不稳定的情况是比较容易发生的,很多情况下App的一些问题是在复杂的网络情况下才会暴露,与其让用户发现和投诉这些问题,不如我们在测试阶段尽量模拟这样的网络情况,及早发现和修复这些问题。
工具:
1. Windows下的Network Delay Simulator
2. Mac下的Network l
ink
第五:稳定性测试
在保证基本功能正确基础之上,App的稳定性就显得非常重要,如果一个App经常出现闪退或者卡死,那么用户体验就会受到很大伤害,在有其他竞争产品的情况下很容易造成用户的流失。
第六:安全测试
包括安装包的安全测试(能否反编译代码、安装包是否签名,完整性校验,权限设置检查等)。
敏感信息测试(数据库,日志,配置文件)。
软键盘劫持(金融类APP登录页面的用户名密码输入框)、
账户安全(密码是否明文,密码传输是否加密,账户输入错误次数过多锁定,同时会话提醒, 注销机制)
数据通信安全(关键数据是否散列或加密,关键连接是否使用安全通信,是否对数字证书合法性进行验证,是否校验数据合法性。
组件安全测试。
服务器端接口测试(SQL注入测试、XSS跨站脚本攻击, CSRF跨站请求伪造,越权访问等)。
第七:环境相关的测试
在实际项目中,有一些缺陷我发现是和App所处的运行环境相关的,所以设计测试的时候,要多考虑这些场景,比如:
1)干扰测试
收到电话、收到短信、收到通知栏消息、无电提示框弹出、第三方安全软件告警弹出。
2)权限测试
一些用户在实际使用App的时候回有意识阻止某些功能。例如有的用户感觉让某个App访问电话本或者相册可能泄漏隐私,就在手机中设置了禁止了该App访问相册的权限。
3)边界测试
手机环境本身也有其边界情况需要在测试中覆盖。常见的场景有:
可用存储空间过少、没有SD卡/双SD卡、飞行模式、系统时间有误(晚于和早于标准时间)、第三方依赖(比如我们的App依赖第三方App,但是现在第三方App没有安装或者版本过低的测试情况)。
4)Android定位测试
用白盒方式模拟app测试流程有哪些?移动App的测试流程与传统软件的测试流程大体相同,在测试之前分析软件需求并对需求进行测试,需求测试完成后制订测试计划等,但移动App测试的要点与传统软件测试要点不同,因此在具体实施细节上也不相同。
1.接受测试版本:由开发人员提交给测试人员。
版本测试:主要检查App开发阶段对应的版本是否一致。
测试:检查App界面是否与需求设计的效果-致。
4.功能测试:核对项目需求文档,测试App功能是否满足客户需求。
5.专项测试:对移动App进行专项测试。
6.正式环境测试:模拟实际使用环境进行测试。
7.上线准备:测试通过后,对测试结果进行总结分析,为App上线做准备。
移动App开发完成后,提交给测试人员。测试人员首先对当前App版本进行检查,通过后进行基本的UI测试,检查界面效果是否与需求设计相符合,之后依据需求文档进行功能测试,完成这些工作后进行专项测试等。*在实际运行环境中进行测试,测试通过后做上线准备工作。
以上是关于app测试流程的介绍,由多测师亲自撰写,全网*提供!功能测试方法有哪些问题一:软件测试方法有哪些 1、按是否查看程序内部结构分为:
(1)黑盒测试(black-box testing):只关心输入和输出的结果
(2)白盒测试(white-box testing):去研究里面的源代码和程序结构
2、按是否运行程序分为:
(1)静态测试(static testing):是指不实际运行被测软件,而只是静态地检查程序代码、界面或文档可能存在的错误的过程。
静态测试包括:
对于代码测试,主要是测试代码是否符合相应的标准和规范。
对于界面测试,主要测试软件的实际界面与需求中的说明是否相符。
对于文档测试,主要测试用户手册和需求说明是否真正符合用户的实际需求。
(5)动态测试(dynamic testing),是指实际运行被测程序,输入相应的测试数据,检查输出结果和预期结果是否相符的过程
3、按阶段划分:
(1)单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。
桩模块(stud)是指模拟被测模块所调用的模块,驱动模块(driver)是指模拟被测模块的上级模块,驱动模块用来接收测试数据,启动被测模块并输出结果。
(2)集成测试( testing),是单元测试的下一阶段,是指将通过测试的单元模块组装成系统或子系统,再进行测试,重点测试不同模块的接口*。
集成测试就是用来检查各个单元模块结合到一起能否协同配合,正常运行。
(3)系统测试(system testing),指的是将整个软件系统看做一个整体进行测试,包括对功能、性能,以及软件所运行的软硬件环境进行测试。
系统测试的主要依据是《系统需求规格说明书》文档。
(4)验收测试( testing),指的是在系统测试的后期,以用户测试为主,或有测试人员等质量保障人员共同参与的测试,它也是软件正式交给用户使用的*一道工序。
验收测试又分为a测试和beta测试,其中a测试指的是由用户、 测试人员、开发人员等共同参与的内部测试,而beta测试指的是内测后的公测,即完全交给最终用户测试。
4、黑盒测试分为功能测试和性能测试:
1)功能测试(function testing),是黑盒测试的一方面,它检查实际软件的功能是否符合用户的需求。
包括逻辑功能测试(logic function testing)
界面测试(UI testing)UI=User Interface
易用性测试(usability testing):是指从软件使用的合理性和方便性等角度对软件系统进行检查,来发现软件中不方便用户使用的地方。
兼容性测试( testing):包括硬件兼容性测试和软件兼容性测试
2)性能测试( testing)
软件的性能主要有时间性能和空间性能两种
时间性能:主要指软件的一个具体事务的响应时间(respond time)。
空间性能:主要指软件运行时所消耗的系统资源。
软件性能测试分为:
一般性能测试:指的是让被测系统在正常的软硬件环境下运行,不向其施加任何压力的性能测试。
稳定性测试也叫可靠性测试( testing):是指连续运行被测系统检查系统运行时的稳定程度。
负载测试(load testing):是指让被测系统在其能忍受的压力的极限范围之内连续运行,来测试系统的稳定性。
压力测试(stress testing):是指持续不断的给被测系统增加压力,直到将被测系统压垮为止,用来测试系统所能承受的*压力。(Validate the system or s......>>
问题二:在软件测试技术中,功能测试选用什么方法 功能测试的常用方法
(1)
页面链接检查,每一个链接是否有对应的界面
(2)
相关性检查,删除
/
增加一项会不会对其他项产生影响,如果产生影响,是否正确
(3)
检查按钮功能是否正确
(4)
字符串长度检查,输入超出需求所说明的字符串长度的内容,
看系统是否检查,
会不会
出错。
(5)
字符类型检查
(6)
标点符号检查
(7)
中文字符处理,乱码或出错
(8)
检查带出信息的完整性,
在查看信息和
update
信息时
,
查看所填写的信息是不是全部带
出
,
带出信息和添加的是否一致。
(9)
信息重复,在一些需要命名,且名字*的信息输入重复的名字或
ID
,看系统有没有
处理,重名包括是否区分大小写,以及在输入内容的前后输入空格,看系统是否处理。
(10)
检查删除功能,在一些可删除多个的地方,不选任何内容按删除按钮看系统如何处理
(11)
选择一个或多个时又如何处理
(12)
检查添加修改是否一致,
检查添加和修改信息的要求是否一致
,
例如添加要求必填的项
,
修改也应该必填
;
添加规定为整型的项
,
修改也必须为整型
.
(13)
检查修改重名,修改时把不能重名的项改为已存在的内容,看会否处理,报错,同时
看会否报和自己重名的错。
(14)
重复提交表单,一条已成功提交的记录,
back
后在提交,看系统是否进行处理。
(15)
检查多次处理
back
键的情况
(16)Search
检查
:
在有
search
功能的地方输入系统存在和不存在的内容,
看结果是否正确;
(17)
如果可以输入多个
search
条件,
同时可以添加合理和不合理的条件,
看系统是否处理
正确。
(18)
输入信息的位置,输入信息时,光标的位置
(19)
上传和下载文件的检查,上传下载的功能是否实现,上传文件是否能打开,上传文件
的格式规定,系统是否有解释信息。
(20)
必填项检查,必填项是否有提示信息
(21)
快捷键检查,是否支持常用快捷键检查
(22)
回车键检查,在输入结束后直接按回车键,看系统处理如何,会否报错。
问题三:测试方案,大概包括哪些方面 人员、资源、进度、测试目标、测试范围、测试完成标准等
问题四:软件测试一般都用到哪些工具 测试工具分为很多种,主要如下:
测试管理工具:MQC,,QACenter,其中缺陷跟踪还可以使用:变更管理工具
功能测试自动化:QTP,RFP,QARun,Silk
性能测试工具:,Robot,QAload,WAS,Silk
单元、白盒测试工具:Junit,Jmeter,,骸probe,Purify Plus
安全测试: Appscan,Fortify
问题五:软件测试方法?都有哪几种? *类测试方法是试图验证软件是“工作的”,所谓“工作的”就是指软件的功能是按照预先的设计执行的;而第二类测试方法则是设法证明软件是“不工作的”。
还有两大类:白盒法和黑盒法。
白盒法:你清楚程序的流程时,用不同的数据测试你程序的代码,验证程序的正确性,有:条件测试,路径测试,条件组合。。。。
白盒法用在程序开发阶段的前期。
黑盒法:主要用于程序开发阶段的后期,即程序的流程测试正确后,测试程序的结果。有什么因果法,边缘值法等。
具体你可以买本软件工程方面的书看看。
还有一下方法:
功能测试:可接受性测试:用户界面测试:探索或开放’型的测试:性能测试:回归测试:强力测试:集成与兼容性测试:装配/安装/配置测试:国际化支持测试:本地化语言测试:
攻些都是测试的方法.
问题六:软件测试的目标和准则是什么?有哪些测试方法?测试步骤有哪些 具体地讲,测试一般要达到下列目标:
1、确保产品完成了它所承诺或公布的功能,并且所有用户可以访问到的功能都有明确的书面说明------在某种意义上与ISO9001是同一种思想。
产品缺少明确的书面文档,是厂商一种短期行为的表现,也是一种不负责任的表现。所谓短期行为,是指缺少明确的书面文档既不利于产品*的顺利交付,容易与用户发生矛盾,影响厂商的声誉和将来与用户的合作关系;同时也不利于产品的后期维护,也使厂商支出超额的用户培训和技术支持费用。从长期利益看,这是很不划算的。领测认为接触过的软件产品,很少有向方正这样大大的产品、薄薄的文档。
当然,书面文档的编写和维护工作对于使用快速原型法(RAD)开发的项目是最为重要的、最为困难,也是最容易被忽略的。
*,书面文档的不健全甚至不正确,也是测试工作中遇到的*和最头痛的问题,它的直接后果是测试效率低下、测试目标不明确、测试范围不充分,从而导致最终测试的作用不能充分发挥、测试效果不理想。
2、 确保产品满足性能和效率的要求
使用起来系统运行效率低(性能低)、或用户界面不友好、用户操作不方便(效率低)的产品不能说是一个有竞争力的产品。
用户最关心的不是你的技术有多先进、功能有多强大,而是他能从这些技术、这些功能中得到多少好处。也就是说,用户关心的是他能从中取出多少,而不是你已经放进去多少。
3、 确保产品是健壮的和适应用户环境的
健壮性即稳定性,是产品质量的基本要求,尤其对于一个用于事务关键或时间关键的工作环境中。
另外就是不能假设用户的环境(某些项目可能除外),如:报业用户许多配置是比较低的,而且是和某些第三方产品同时使用的。
测试的原则---Good Enough
对于相对复杂的产品或系统来说,zero-bug是一种理想,good-enough是我们的原则。
Good-enough原则就是一种权衡投入/产出比的原则:不充分的测试是不负责任的;过分的测试是一种资源的浪费,同样也是一种不负责任的表现。我们的操作困难在于:如何界定什么样的测试是不充分的, 什么样的测试是过分的。目前状况*可用的答案是:制定*测试通过标准和测试内容,然后具体问题具体分析。最明显的例子就是中文报版的产品测试。
测试的规律----木桶原理和80-20原则
1、木桶原理。
在软件产品生产方面就是全面质量管理(TQM)的概念。产品质量的关键因素是分析、设计和实现,测试应该是融于其中的补充检查手段,其他管理、支持、甚至文化因素也会影响最终产品的质量。应该说,测试是提高产品质量的必要条件,也是提高产品质量最直接、最快捷的手段,但决不是一种根本手段。反过来说,如果将提高产品质量的砝码全部押在测试上,那将是一个恐怖而漫长的灾难。
2、 Bug的80-20原则。
一般情况下,在分析、设计、实现阶段的复审和测试工作能够发现和避免80%的Bug,而系统测试又能找出其余Bug中的80%,*的5%的Bug可能只有在用户的大范围、长时间使用后才会曝露出来。因为测试只能够保证尽可能多地发现错误,无法保证能够发现所有的错误。
软件测试的方法:
1、按是否查看程序内部结构分为:
(1)黑盒测试(black-box testing):只关心输入和输出的结果
(2)白盒测试(white-box testing):去研究里面的源代码和程序结构
2、按是否运行程序分为:
(1)静态测试(static testing):是指不实际运行被测软件,而只是静态地......>>
问题七:功能测试包括哪些测试,都使用哪些测试方法 5分 这要根据相关的*标准和产品标准来制定了。
由于是功能测试,如果以上标准都没有,就由检验*自己站在用户的立场结合使用说明书制定了。
问题八:芯片功能的常用测试手段或方法几种? 5分 这是一个程序,一段可执行代码,搞活动,扰乱了正常的使用电脑,使电脑无法正常使用甚至整个操作系统或者电脑硬盘损坏。就像生物病毒一样,计算机病毒有独特的复制能力。计算机病毒迅速蔓延,常常难以根除。他们可以将自己的各类文件。当文件被复制或从一个用户传送到另一个用户时,它们传播的文件。这个程序不是独立存在的,它隐藏在可执行程序中,无论是破坏性的,但也有传染性和潜在的。轻则影响机器运行速度,该机并没有运行,而机器处于瘫痪,会给用户带来不可估量的损失。通常把这种破坏性影响的电脑病毒的程序。
除了复制,有些计算机病毒的能力,也有一些共同的特点:一个的污染程序能够传送病毒载体。当你看到病毒载体似乎仅仅停留在文本和图像,他们也可能会破坏文件,重新格式化您的硬盘驱动器或导致其它类型的灾害。如果病毒是寄生于一个污染程序,它仍然是通过占用的存储空间给你带来麻烦,并降低你的计算机的性能。
?
计算机病毒具有以下特点:
(1)的寄生
计算机病毒,寄生虫在其他方案中,当该程序被执行时,病毒的破坏性作用,这个程序开始之前,它是不容易被发现。
(2)感染
计算机病毒不仅破坏性的,有害的传染性,一旦病毒被复制或产生的变种,它是困难的,以防止它的速度。
(3)潜
有些病毒,如一颗定时炸弹,它的攻击时间是预先设计的。如黑色星期五病毒,不到预定的时间内都意识到了这一点,等到条件成熟时,突然发生爆炸并摧毁系??统。
(4)隐瞒
隐藏的电脑病毒,一些病毒软件检查出来,有的根本就没有检查出来,一些被隐藏时,善变,这种病毒通常是非常难以对付。
?
计算机被感染,它会表现出不同的症状,下面列出了一些经常遇到的现象,供用户参考。
(1)机器不能正常启动
接通电源后机器不能启动或可以启动,但所需要的时间比原来的启动时间变长。有时会突然屏幕是空白的。
(2)运行速度降低
如果你发现,当你运行一个程序来读取数据的时间比原来长,保存的文件或文件传输文件的增加,这可能是由于病毒引起的。
(3)快速磁盘空间更小
驻扎在内存中的病毒程序,并能繁殖,所以内存空间的小甚至变为“0”,没有获得用户信息。
(4)的文件的内容和长度变化
到磁盘上的一个文件,它的长度和它的内容不会改变,但由于该病毒的干扰,文件长度可能会改变文件的内容,可能会出现乱码。有时文件的内容不能被显示或显示,然后消失了。
(5)经常“撞车”现象
正常工作不会导致死亡的现象,即使是初学者,命令输入不崩溃。如果机器经常死机,可能是因为系统被感染。
(6)的外部设备不能正常工作
如果机器有病毒,因为外部设备的控制系统,外部设备在工作中可能会出现一些不寻常的情况下,在理论或经验说不清道不明的现象。
上面的列表只是一些比较常见的病毒表现形式,肯定会遇到一些其他的特殊现象,这需要由用户来判断。
?
首先,在思想认真,加强管理,阻止病毒的入侵。所有的外部软盘复制机,的软盘病毒扫描,如果是这样,病毒必须被删除,所以你可以保持您的计算机病毒感染。此外,由于病毒具有潜在的,可能掩盖了一些老病毒,在时机成熟时就会发作,所以往往在磁盘上的检查,如果发现病毒及时杀除。思想的重要性的基础上采取有效的病毒扫描和消毒方法的技术保证。检查病毒和,消除病毒通常有两种方式,一台电脑加一个防病毒卡,另一种是使用反病毒软件的工作原理基本上是相同的,一些更多的普通用户的防病毒软件。记住要注意预防和消除病毒是一个长期的任务,不是一劳永逸的,持之以恒。
计算机病毒在什么情况下出现? ......>>
问题九:集成测试的方法有哪些?分别适用于那些情况 集成测试的实施方案有很多种,如自底向上集成测试、自顶向下集成测试、Big-Bang集成测试、三明治集成测试、核心集成测试、分层集成测试、基于使用的集成测试等。具体相关问题,可以去 搜狗测试 微信公众号上问问~
问题十:测试方法有哪些,各有什么优缺点? 1、恢复测试
恢复测试主要检查系统的容错能力。当系统出错时,能否在指定时间间隔内修正错误并重新启动系统。恢复测试首先要采用各种办法强迫系统失败,然叮验证系统是否能尽快恢复。对于自动恢复需验证重新初始化()、检查点( mechani *** s)、数据恢复(data recovery)和重新启动 (restart)等机制的正确性;对于人工干预的恢复系统,还需估测平均修复时间,确定其是否在可接受的范围内。
2、安全测试
安全测试检查系统对非法侵入的防范能力。安全测试期间,测试人员假扮非法入侵者,采用各种办法试图突破防线。例如,①想方设法截取或破译口令;②专门定做软件破坏系统的保护机制;③故意导致系统失败,企图趁恢复之机非法进入;④试图通过浏览非保密数据,推导所需信息,等等。理论上讲,只要有足够的时间和资源,没有不可进入的系统。因此系统安全设计的准则是,使非法侵入的代价超过被保护信息的价值。此时非法侵入者已无利可图。
3、强度测试
强度测试检查程序对异常情况的抵抗能力。强度测试总是迫使系统在异常的资源配置下运行。例如,①当中断的正常频率为每秒一至两个时,运行每秒产生十个中断的测试用例;②定量地增长数据输入率,检查输入子功能的反映能力;③运行需要*存储空间(或其他资源)的测试用例;④运行可能导致虚存操作系统崩溃或磁盘数据剧烈抖动的测试用例,等等。
4、 性能测试
对于那些实时和嵌入式系统,软件部分即使满足功能要求,也未必能够满足性能要求,虽然从单元测试起,每一测试步骤都包含性能测试,但只有当系统真正集成之后,在真实环境中才能全面、可靠地测试运行性能系统性能测试是为了完成这一任务。性能测试有时与强度测试相结合,经常需要其他软硬件的配套支持。如何测试app软件测试在手机中的使用情况手机app测试主要有以下:
1.安全测试
1)软件权限
-扣费风险:包括发送短信、拨打电话、连接网络等 -隐私泄露风险:包括访问手机信息、访问联系人信息等 -新增风险项
2)开发者官方权限列表信息比对分析 2.安装、运行、卸载测试
验证App是否能正确安装、运行、卸载,以及操作过程和操作前后对系统资源的使用情况,主要包括:
1)检测软件是否能正确安装、运行、卸载; 2)安装、卸载、更新错误报告; 3)其他辅助信息: -位置和文件夹是否合理; -组件是否正确注册或删除;
-评估操作前后,CPU、Memory(内存占用)、Storage(磁盘占用)等系统资源的使用情况。 测试
测试用户界面(如菜单、对话框、窗口和其它可视控件)布局、风格是否满足客户要求,文字是否正确,页面是否美观,文字,图片组合是否完美,操作是否友好等。
UI测试的目标是确保用户界面会通过测试对象的功能来为用户提供相应的访问或浏览功能。确保用户界面符合公司或行业的标准。包括用户友好性、人性化、易操作性测试。 4.功能测试
根据软件说明或用户需求验证App的各个功能实现,采用如下方法实现并评估功能测试过程:
1)采用时间、地点、对象、行为和背景五元素或业务分析等方法分析、提炼App的用户使用场景,对比说明或需求,整理出内在、外在及非功能直接相关的需求,构建测试点,并明确测试标准(若用户需求中无明确标准遵循,则需要参考行业或相关国际标准或规则)。 2)根据被测功能点的特性列举出相应类型的测试用例对其进行覆盖,如:涉及输入的地方需要考虑等价、边界、负面、异常或非法、场景回滚、关联测试等测试类型对其进行覆盖。 3)在测试实现的各个阶段跟踪测试实现与需求输入的覆盖情况,及时修正业务或需求理解错误。 5.性能测试
评估App的时间和空间特性
1)极限测试:在各种边界压力情况下(如电池、存储、网速等),验证App是否能正确响应。
2)响应能力测试:测试App中的各类操作是否满足用户响应时间要求 3)压力测试:反复/长期操作下,系统资源是否占用异常; 4)性能评估:评估典型用户应用场景下,系统资源的使用情况。
5)Benchmark测试(基线测试):与竞争产品的,产品演变对比测试等。 6.中断测试
针对智能终端应用的服务等级划分方式及实时特性所提出的测试方法,如:App在前/后台运行状态时与来电、文件下载、音乐收听等关键运用的交互情况测试等。 7.兼容测试
主要测试内部和外部兼容性,包括:
与本地及主流App是否兼容; 检验在各种网络连接下(WiFi、GSM、GPRS、EDGE、WCDMA、CDMA1x、CDMA2000、HSPDA等),App的数据和运用是否正确;
与各种设备是否兼容(若有跨系统支持则需要检验是否在各系统下,各种行为是否一致)。
8.安全测试
安全测试显得尤为重要,粗心、不谨慎的数据存储或传输方式使得非法、恶意目的有可乘之机。
智能终端安全涉及各信息交互、存储接点,借鉴于网络传输和相关安全测试经验,App安全测试大概划分为以下几类:
1)从数据的本地存储到数据的传输、处理以及远程访问等各个环节,基于相应的安全标准/行业标准评估App的安全特性;
2)借鉴在Web App和网络安全测试的一些成功经验在智能终端App测试中进行裁减或适配;
3)检测App的用户授权级别,数据泄漏,非法授权访问等;
4)对App的输入有效性校验、认证、授权、敏感数据存储、数据加密等方面进行检测,以期发现潜在的安全问题;
5)基于各种通信协议或相应的行业安全标准检视App是否满足相应的要求手机app测试有哪些工具盒方法
手机app测试有可以利用以下几种工具:
1、安卓黑盒测试工具
1)包括本身自带的monkey,Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中;
2) robotium与appium,这些工具用于黑盒的自动化测试。可以在有源码或者只有APK 的情况下对目标应用进行测试。
2、白盒测试,Android在SDK中集成了JUnit框架。所以,你可以基于JUNIT框架进行安卓的白盒测试代码开发;
3、安卓的测试方法其实与web测试方法大多类似,只是多了一些特殊的测试场景;
4、兼容性测试,一是可以利用虚拟机来保证系统间的兼容性,但更多的还需要依靠真机来测试;
扩展资料:
APP测试要点:
1、功能测试
最基本的测试,主要是测试软件app的功能点、业务逻辑;关联性(主要是测试客户端和PC的交互,客户端处理完后,保证PC端数据同步且一致)
2、性能测试
cpu,占用不超过10%,响应时间(包括app启动和退出),满足258原则,2秒以内用户感觉很快,2-5秒感觉一般,5-8秒感觉很慢,但是能接受,8秒以上用户无法接受,选择离开,或者再次发送请求;
3、兼容性测试
手机app需要重点关注的,不同操作系统:android、iOS不同手机厂商,小米,华为等不同的手机屏幕分辨率,与其他第三方app的兼容;
4、安装卸载更新测试
也是手机app比较特别的测试点,安装的路径,手机还是sd卡上,高低版本的覆盖安装,内存不足时的安装,安装过程中出现中断情况,第三方管理软件中卸载app,卸载过程中出现中断情况;
5、中断或崩溃测试
中断测试主要是测试app是否会出现crash情况。来电、短信、闹钟、低电量等,网络环境突然改变,或者网络中断,例如隧道、电梯(离线支持),切换网络,例如数据连接切换到wifi外部设备。
比如充电,插耳机内存不足改变设备方向改变手机语言,例如英文多后台程序切换长时间开机并且长时间开启app也可以用monkey来测试apk的稳定性,也能检查出一些crash的问题;
6、安全测试
7、UI测试
参考资料:百度百科-手机APP
如何做好app的测试工作?测试流程中都包含哪些方面?
腾讯有个平台可以实现适配兼容、服务器压力、性能测试、弱网络、耗电量测试等等,挺全面的。WeTest腾讯质量开放平台,本人亲测过体验还不错。
下面说一下测试一个App具体包括哪些方面,以及每个方面的关键点。
测试人员常被看作bug寻找者,但你曾想过他们实际是如何开展测试的吗?你是否好奇他们究竟都做些什么,以及他们如何在一个典型的技术项目中体现价值?本文将带你经历测试人员的思维过程,探讨他们测试app时的各种考虑。本文的目的在于揭示测试人员的这一思维过程,并展示他们通常所考虑内容的广度和深度。
本文是基于我的工作经验而写的,作为一名敏捷软件开发团队的测试经理,我一心投入测试工作。在与其他app测试专家交流的过程中,我深刻了解到app测试工作的困难。在日常工作的摸索中,我将如何做好app的测试归结为如下内容。
(1) 非功能测试
app测试的一个重要方面是app的非功能需求。移动app在推出市场或进行进一步开发前,测试人员有一定的职责做该类需求的跟踪工作。
早期开发阶段要进行的*个测试应该是实用性测试。通常是由alpha用户或同事进行的。走进一家咖啡馆或餐厅,问问里面的人他们的app使用情况。让他们看看现阶段开发的*个版本并收集反馈,看看用户是否能很好地使用新功能,以便得出*印象。
(2) 功能测试
每项开发的新功能都需要进行测试。app测试中功能测试是一个重要方面。测试人员应该要进行手动测试和后期的自动化测试维护。刚开始测试时,测试员必须把app当做"黑盒"一样进行手动测试,看看提供的功能是否正确并如设计的一样正常运作。除了经典软件测试,像点击按钮、提交订单看看会发生什么,测试员还必须执行更多功能的app测试。
除了整个手动测试过程,测试自动化对移动app也很重要。每个代码变化或新功能都可能影响现存功能及它们的状态。通常手动回归测试时间不够,所以测试员不得不找一个工具去进行自动化回归测试。现在市面上有很多自动化测试工具,有商业的也有开源的,面向各个不同平台,如Android,iPhone,,以及移动Webapp。根据开发策略和结构,品质管理测试专家需找出最适合他们环境的自动化工具。
(3) 客户端性能测试
一个App做的好不好,不仅仅只反应在功能上。被测的app在中低端机上的性能表现也很重要。比如:一个很好玩的游戏或应用,只能在高端机上流畅运行,在中低端机上卡的不行,也不会取得好的口碑。
关于App的性能测试,我们比较关注的参数有:CPU,内存,耗电量,流量,FPS。同时也需关注一下App的安装耗时和启动耗时。
目前大家可能比较困惑的一个问题,多高的CPU,内存,耗电量,流量,FPS才算是符合发布的值呢?这里可以告诉大家,可以参考精品游戏的一些数值,将自己研发的app与业内精品的app数据做对比。
(4) 适配兼容测试
市面上目前存在的移动设备五花八门,下图列出过去12个月的移动设备品牌占比情况。
App在经过功能测试后,也需对其进行适配兼容测试需要检查的项主要有以下几点:
(a) 在不同平牌的机型上的安装、拉起、点击和卸载是否正常;
(b) 在不同的操作系统上的安装、拉起、点击和卸载是否正常;
我们在实际测试中,常常会遇到下列问题:
(a) 在某个平牌某个系统上,app安装不上;
(b) 在某个平牌某个系统上,app无法拉起;
(c) 在某个平牌某个系统上,app拉起后无响应或拉起后黑屏、花屏;
(d) 在某个平牌某个系统上,app无法顺利卸载;
腾讯WeTest这个产品可以实现多款热门机型的适配兼容测试。
(5) 弱网络测试
App在使用的过程中,难免会遇到弱网络环境,例如在公车上、在地铁里。在这种情况下,常常会出现网络抖动、上行或下行超时,导致应用中出现丢包。
作为一个测试人员,我们要对app在上线前做一定场景的弱网络环境模型,并查看app在弱网络环境下是否存在某些未知的问题。下面是我们常用的弱网络环境场景:
(a) 3G弱网络信号场景模拟;
(b) 市区低速移动场景模拟;
(c) 郊区高速移动场景模拟;
(d) 请求回应超时_上行超时场景模拟;
(e) 请求回应超时_下行超时场景模拟;
(f) 网络抖动场景模拟;
这个工具也可以解决
(6) 耗电量测试
App在手机上的表现,除了功能外,app是否耗电,也是测试过程中重点要关注的一项。手机设备在满电的时候,这个App能玩多久;App每小时的耗电是多少;App在某个场景挂机10分钟耗电量是多少;这些都是我们平时在耗电量测试中比较关注的点。
(7) 协议测试
模拟客户端直接发送协议包给服务器,看看服务器是否有一定的校验,认不认客户端发过来的数据。协议测试,主要是为了处理用户发送恶意协议到服务器,骗过服务器的校验。
(8) 安全测试
App在上线前,都需要做详细的安全测试。安全测试主要为了检测应用是否容易被外界破解;是否存在被恶意代码注入的风险;上线后外挂的风险高不高等。
(9) 服务器性能测试
服务器性能测试,主要包含单机容量测试和24小时稳定性测试。单机容量测试,可以检测到单机服务器在90%的响应时间和成功率都达标的前提下,能够承载多少用户量。使用特定游戏模型压测24小时,服务无重启,内存无泄漏,并且各事务成功率达标。
这个可以在WeTest入口预约。
(10) 服务器容灾测试
服务器容灾测试,主要指某个服务进程奔溃掉后,是否具有自行恢复能力。比如游戏逻辑进程消失后,是否会自动拉起;memcached崩溃时,是否会重新启动,是否会对所有玩家有影响。这些都是app测试过程中需要考虑的因素。
(11) 中断测试
针对智能终端应用的服务等级划分方式及实时特性所提出的测试方法,如:App在前台和后台运行状态时与来电、文件下载、音乐收听等关键运用的交互情况测试等。测试电话,短信,彩信,微博或其他通知进来时app的反应。
(12) 上线后期的舆情跟踪
新的app上线后,用户对此应用的评价,存在哪些测试期间未察觉的Bug,论坛上对于该应用热门的帖子有哪些,应用商店中该应用的口碑如何等,都是app在上线后,测试人员需要关注的点。若需要测试期间未发现的Bug,需要新测试服进行确认并根据该问题的修复。