软件测试过程流程

一、软件测试的系统流程

  软件工程模型基本就是业务建模-〉系统分析-〉概要设计-〉详细设计-〉编码-〉测试-〉部署。其中测试过程按4个步骤进行,即单元测试、集成测试、系统及发版测试和回归测试。

 

  (1)单元测试,集中对每一个程序单元进行测试,检查各个程序模块是否正确地实现了预定的功能,属于白盒测试,测试范围为单元内部的源代码和程序结构(如数据结构,逻辑控制,异常处理等)。

  (2)集成测试把已测试过的模块组装起来,检查模块间接口是否正确,检查各个模块之间的通信和相互调用是否符合需求。属于灰盒测试,测试范围为模块接口之间的数据传递,以及模块组合后的功能。

  (3)系统测试把被测软件系统和计算机硬件、数据库、外设、前端和后端以及其它软件结合在一起,在实际运行环境下对软件系统进行一系列的组装测试和运行测试。目的在于检测软件对《需求规格说明书》的符合程度。属于黑盒测试,只关心输入和输出结果,测试范围为整个系统。

  (4)回归测试:是软件上线后的维护阶段或者是研发修复Bug之后进行确认测试。目的在于验证缺陷已经得到修复,并检测是否引入新的缺陷。

  二、测试用例及编写方法

  测试用例是一份描述具体测试步骤的文档,包括测试的输入参数、条件及配置、预期的输出结果等,用以判断被测软件的工作是否正常。

  2.1、测试用例设计的三大原则

   (1)设计测试用例要力求最大的覆盖率,参考《需求规格说明书》对每个功能点进行操作上的细化,尽可能趋向最大需求覆盖率。

   (2)用例要对测试功能点、测试条件、测试步骤、输入值和预期结果准确描述。

(3)在设计测试用例的时候,除了满足系统基本功能需求外,还应该考虑各种异常情况、边界情况和承受压力的能力等。

  2.2、设计测试用例设计方法

  设计测试用例时要根据具体的产品和需求所明书,比如NetSignC接口普遍得就是根据输入和输出参数的不同情况设计用例,但也有通用的情况。

   (1)等价类划分。把程序的输入域划分成若干部分子集,然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值,比如传输IP地址时,可以分为A类地址、B类地址和C类地址。既能减少用例总数,又能提高测试覆盖率。

   (2)边界值分析法。通常边界值分析法是作为对等价类划分法的补充,其测试条件来自等价类的边界。因为很多错误是发生在输入或输出范围的边界上,而不是发生在输入/输出范围的中间区域。因此针对各种边界情况设计测试用例,可以查出更多的错误。

   (3)错误推断法。基于测试人员的经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例。比如字符串和普通的字符数组结尾’’的区别,内存拷贝函数stycpy和memecpy必须要进行+1或-1的操作。

  三、APP测试中经常出现的基础案例

  3.1、APP的安装、卸载测试

   (1)软件在不同操作系统及版本(Android的EMUIFlymeMIUI、iOS、WindowsPhone)下安装是否正常;

   (2)软件安装后的是否能够正常运行,安装后的文件夹及文件是否写到了指定的目录里,安装后没有生成多余的目录结构和文件;

   (3)软件安装过程是否可以取消;

   (4)软件安装过程中意外情况的处理是否符合需求(如死机,重启,断电)

   (5)安装空间不足时是否有相应提示;

   (6)对于需要通过网络验证之类的安装,在断网情况下尝试一下

   (7)重复安装应该有提示;

   (8)升级安装时,版本更新链接有效,比如后台设置的版本白名单;

   (a)使用各种方式卸载程序,如直接删除安装文件夹卸载是否有提示信息、长按图标卸载、手机设置里卸载、第三方应用卸载;

   (b)测试卸载后文件是否全部删除所有的安装文件夹;

   (c)卸载过程中出现的意外情况的测试(如死机、断电、重启);

   (d)卸载是否支持取消功能,单击取消后软件卸载的情况。

  3.2、APP的注册、登录和修改密码测试

 

 

 

  3.3、核对rp原型图和效果图,进行UI测试

   (1)观察APP的用户界面(如菜单、对话框、窗口和其它可规控件)是否符合UI稿。

   (2)不同的连接页面之间导航链接是否有效,是否跳转是否正确。

   (3)旋转手机,确保程序不退出,页面排版无异常。

   (4)输入框说明文字的内容与产品需求一致。

   (5)某页无数据时、断网时、有网但接口异常时的状态页是否和UI一致。

  3.4、核对需求文档,进行功能测试

  功能测试的用例要根据具体产品设计,这里只提供通用点。APP端测试最关心的是流程和数据,避免Crash和ANR问题。

   (1)App安装完成后是否能正常启动,且打开速度控制在预期时间内。

   (2)切换后台再切换前台的操作对当前状态如登陆、当前页、数据刷新的影响。

   (3)强制杀掉APP进程再启动对当前状态如登陆、当前页、数据刷新的影响。

   (4)登陆验证/免密登陆时的手势密码和指纹是否符合产品需求

   (5)对于有数据交换的页面,每个页面都必需要进行前后台切换、锁屏解锁的测试,这种页面最容易出现崩溃。

   (6)同一用户在多个终端先后登陆时,APP是否有符合产品需求的处理。

   (7)App使用过程中有电话进来的中断测试,与文件下载、音乐播放、等应用的交叉情况测试。

   (8)很多应用会支持缓存数据,测试在断网启动或从有网到无网时是否可以浏览缓存数据。

  3.5、安全性测试

  a.软件权限

  扣费风险:包括短信、拨打电话、连接网络等。

  限制/允许使用手机拍照或录音。

  限制/允许使用手机读取用户数据,手机信息、联系人信息等。

  限制/允许使用手机写入用户数据。

  没有用户的允许,应用程序不能预先设定自动启动。

  对App的输入有效性校验、认证、授权、数据加密等方面进行检测。

  没有用户的允许,应用程序不能预先设定自动启动。

  手机能控制该APP能否使用Wi-Fi和移动数据。

  b.数据安全性

  如果数据库中重要的数据正要被重写,应及时告知用户。

  在数据删除之前,应用程序应当通知用户或者应用程序提供一个“取消”命令的操作。

  对密码长度和复杂度的要求。

  当将密码或其他的敏感数据输人到应用程序时,其不会被储存在设备中,同时密码也不会被解码。

  当应用程序处理信用卡明细或其它的敏感数据时,不以明文形式将数据写到其他单独的文件或者临时文件中。

  3.6、性能压力测试

   (1)APP端性能测试:在各种边界压力情况下,如电池、存储、网速等,验证App是否能正确响应。

   (2)Server端性能测试:通过测试接口的执行效率,如http接口。

  3.7、兼容性测试

   (1)与本机已经安装的App是否兼容。

   (2)在各种系统、系统版本的不同手机上测试注册、登陆、修改密码等功能。

   (3)UI层的兼容,界面的显示根据不同尺寸手机是否自适应。

   (4)在各种系统、系统版本的不同手机上进行全方面的功能测。试,如使用每一个iOS版本的iPhone上测试“我的银行卡”模块的提现功能。

   (5)基于开发环境和生产环境的不同,检验在各种网络连接下(WiFi、2G/3G/4G等),App的数据和运用是否正确。

推荐这些技术文章:

软件测试过程流程

一、软件测试的系统流程
  软件工程模型基本就是业务建模-〉系统分析-〉概要设计-〉详细设计-〉编码-〉测试-〉部署。其中测试过程按4个步骤进行,即单元测试、集成测试、系统及发版测试和回归测试。
 
  (1)单元测试,集中对每一个程序单元进行测试,检查各个程序模块是否正确地实现了预定的功能,属于白盒测试,测试范围为单元内部的源代码和程序结构(如数据结构,逻辑控制,异常处理等)。
  ...

软件测试___app问题之闪退

闪退的原因分为种:一、软件本身有问题;二、系统出现问题。
一、软件问题
(1)app 不兼容系统当前系统版本
(2)app有了新版本,没有跟新(软件对手机分辨率有一定的要求)
(3)软甲有bug
(4)下载和更新不是官网下载的,是第三方软件下载的
(5)网络差(软件对网速的要求比较高,如果用户使用 2 G/3 G 网络)
(6)分辨率不兼容(软件对手机分辨率有一定的要求)
  &nbs...

软件测试流程

1. 软件测试流程

 
 

 

...

软件测试和软件调试究竟有什么不同?

对于小白来说,往往将“软件测试”和“软件调试”混淆不清,因为对于这些词并没有一个清晰的概念,这也是大多数人会犯的错误。但是实际上,无论是从目标还是操作步骤上来看,两者的区别都是很大的,接下来就带大家了解下。
1.目标不同
软件测试的主要目标是将程序中存在的bug,错误一一找出来,这是一个挑错的过程。而软件调试的最终目标是保证程序可以正常运行,也就是说要将找出来的bug进行修复,是一种排错的过程。...

软件测试减少软件故障的发生

软件故障
2019年美国联合航空公司的计算机中断导致数千名旅客延误,在我们日常生活中也经常听说某软件因升级而出现软件故障,某网站或APP崩溃,这些软件故障似乎成为了我们日常生活的一部份。事实上,软件故障确实是经常发生,且不可避免的。

有的软件故障十分严重,甚至成为全球性的新闻,有的故障造成的影响却微乎其微。但是无论软件的故障严重与否,都会影响企业的声誉、最终用户的体验,并可能给公司带来严重的经...

移动App测试注意事项,福州第三方软件测试机构有哪些?

  移动互联网时代,为我们的生活及工作带来了极大的便利。伴随着App的火爆市场,其软件质量以及安全保障日益重要。如热搜上时常能看见的某App崩溃,还有服务器异常、出现bug等问题,归根结底还是该软件在上市之前的软件测试没做好。一个成功的App,软件测试是必不可少的一步,那么移动App在进行测试时有哪些注意事项呢?

 

  1、移动App测试较PC端程序测试要复杂
  移动App需...

软件测试的基本原则

在软件测试过程中,应注意和遵循的具体原则,具体可以概括为以下几项,接下来我们就来了解一下。
1.所有测试标准都是建立在用户需求之上。
软件测试的目标就是验证产品的一致性和确认产品是否满足客户的需求,所以测试人员要始终站在用户的角度去看问题、去判断软件缺陷的影响,系统中严重的错误是那些导致程序无法满足用户需求的缺陷。
2.事先定义好产品的质量标准。
有了质量标准,才能依据测试的结果对产品的质量进行...

软件测试《52讲》--测试基础知识篇

软件测试《52讲》--测试基础知识篇
01| 你真的懂测试吗?从“用户登录”测试谈起
02| 如何设计一个“好的”测试用例?
03|什么是单元测试?如何做好单元测试?
04| 为什么要做自动化测试?什么样的项目适合做自动测试?
05| 你知道软件开发各阶段都有哪些自动化测试技术吗?
06| 你真得动测试覆盖率吗?
07| 如何高效填写软件缺陷报告?
08| 以终为始,如何才能做好测试计划?
09...

细说软件测试的过程-泽众云测试

   和技术群里的朋友在讨论软件测试过程以及各个阶段的活动、结合实际来说软件测试过程一般分为:测试分析、测试设计、测试执行、以及测试总结。
 
  下面我们详细解析下软件测试过程中各个阶段。
 
  测试分析:这里所说的测试分析根据需求规格说明书概要设计说明书进行需求分析、确定测试策略、测试范围、测试资源和时间安排以及编写和评审测试计划。在测试分析阶段主要的输出是测...

软件测试管理及其应用重点

第一章 1.软件测试管理目标 明确为什么不能测试所有可能性: 1) 可能进行测试的数目是无限的 2) 真正能执行的测试只是代表性的案例 3) 很难确定理想的可能测试的数目 4) 用较少的测试资源获取更多的信息 2.软件测试管理的目标应考虑以下几个方面: 1) 可用测试资源 2)使用适当的测试技术和方法 3)明确具体软件测试任务 3.软件测试任务图 集成测试 ...

文章标题:软件测试过程流程
文章链接:https://www.dianjilingqu.com/3491.html
本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:saisai#email.cn,感谢支持理解。
THE END
< <上一篇
下一篇>>