熟悉软件的方法及系统测试的分析方法

  • Post author:
  • Post category:其他


系统测试分析

回顾:什么是系统测试?

软件:需求--》设计--》编码--》测试(单元测试、集成测试、系统测试、验收测试)--》发布维护

系统测试:就是将已经集成好的软件系统,作为一个计算机的元素,与计算机的硬件,软件,数据,人员在实际的运行环境下,进行一系列的测试和调试。

测试的对象:整个软件(功能、性能、安全、安装等等)

测试的目标:通过需求规格说明书进行比对,检查软件是否符合需求的要求。

测试依据:需求规格说明书

测试方法:灰盒测试方法为主



什么是分析?是在头脑中把事务或者对象分解为各个部分或者属性,常见的:力学分析,化学分析,成分分析,系统分析,代码分析等等。



系统测试分析

分析的对象:系统测试(测试活动)– 》软件系统

分析的目的:发现问题,解决问题,关闭问题,比如验收房子(毛坯,精装…)

分析的前提:敢于怀疑(不代表不信任),怀疑程序员,怀疑需求人员,怀疑客户,怀疑自己…

系统测试分析前的准备:

熟悉被测试对象:越熟悉被测试软件,越有利于我们提取应测试特性

怎么熟悉?
    利用文档:需求规格说明书
              设计说明文档(概要设计,详细设计说明书)
                  测试用例
                  缺陷报告
                  操作手册
                  源代码

    最直接的熟悉方法:直接使用

== 》需求在一级一级的传递过程当中,会发生变化…

措施:需求确认,减少变更:四次握手的方法(外包公司居多,帮助项目在内部达成一致),即四次会议

一、需求人员发起,进行需求的澄清和串讲,项目经理,开发,测试都需要参加(初步了解)

二、项目经理发起,进行需求的反澄清和反串讲,需求,开发,测试都要参加(进一步了解)

三、开发人员发起(针对各自负责的模块),进行需求的反澄清,反串讲(怎么理解的,准备怎么做),需求,

项目经理,测试都要参加

四、测试发起:进行需求的反澄清,反串讲,需求,项目经理,开发都参加,串讲的重点测试要点,测试思路(测试重点可以通过思维导图画出来)

角色和职责的划分: 需求人员(真正的理解用户需求,并且准备表达出来),尽可能发掘用户真正的需求

开发人员(严格按照需求文档来,不需要随意添加或者减少自己认为的需求)

测试人员(准确理解需求,质量意识,怀疑精神)


熟悉软件的方法:SFDPOT(测试纬度,测试角度)

S : structrue 架构  无架构 ---- 例如:单机版  安装,卸载
                     B/S 浏览器 ---- 兼容性,功能,性能,GUI
					     服务器 ---- 环境搭建(大的平台,有专人负责部署,小的平台,需要提供部署文档)
				     
					 C/S 客户端 ---- 安装,卸载,功能,兼容性,GUI (比如 5年前 qq 和现在 QQ)
					 
					     服务器 ---- 环境搭建,功能
						 
					 P2P 端到端:两端是平等的,比如:飞秋 功能

F :function 功能

    比如:微信,界面上所有的功能(通讯录,聊天,发现,我的,聊天:语音,文字,视频,图片,红包)
	 
D: data 数据   输入的数据:输入的信息,传入的图片文字等等
                输出的数据:输出的信息和文件
				预置的数据:软件自带的数据(默认值,下拉框选项等等)

P:platform 平台   提醒测试人员关注软件的运行的平台(操作系统,浏览器,分辨率等等)

o:operation  操作 提醒测试人员关注用户的使用方法

T: time 提醒测试人员关注软件是否收到时间的限制

    例如:时区,跨时区聊天,聊天记录如何显示
	
	    夏令时,冬令时:夏季作息时间,冬季作息时间

系统测试分析方法:三个方法一个思路

一:质量模型分析法:针对每个功能/非功能特性适用质量模型分析法

质量模型(内部外部质量):六大特性:功能性、可靠性、易用性、效率、可移植性、可维护性

功能性:保密安全性  需要分析被测试软件有没有敏感的数据,有没有需要提高安全性的数据
                    例如:密码是否是掩码显示,传输的过程中是否加密处理
					
					提醒测试人员关注数据的敏感性,如何才能让软件更安全(传输、存储加密)
					
     适合性  需要考虑软件中包含哪些比较合适的功能,写入需求文档中,作为开发和测试的依据
		        关键点: 有没有 (两个角度:需求文档中有,软件中没有;需求文档中没有,软件中有)
				提醒测试人员关注软件和需求的一致性。
				
     准确性  关键点:对不对
		         
				提醒测试人员关注软件的功能实现的是否正确,是否跟文档中描述的功能和实际业务操作
				的 结果是一样的。
				
     互操作性  分析被测试软件与其它软件有没有交互,如果有,就要进行测试。
		
	 	        提醒测试人员关注软件和其它软件之间的交互作用
				

     依从性 主要是法律法规,行业标准,在测试的时候可以暂时不考虑

可靠性:成熟性 内部处理问题的能力 == 》内部代码,长时间稳定性测试

       容错性	针对的是抗打击,抗错误的能力(提醒测试人员关注输入错误的情况)
		
		可恢复性  提醒测试人员关注异常情况,例如:闪退,断电等异常情况,再次打开软件是否能快速恢复
	
	对应的软件测试类型:稳定性,功能测试(异常测试)

易用性:易理解性:分析软件中帮助信息,提示信息是否易懂

易学性:是否容易被使用,用起来是否方便,特别是操作手册类

易操作性:操作的时候是否容易,方便,原则:能选择的绝对不能让输入,关注的软件的使用方便

吸引性:提醒测试人员关注软件的界面:布局是否合理,美观,具有吸引性。(GUI测试)

效率(有一定压力):时间

资源的利用率

					对应的是性能测试

可移植性:适应性 提醒测试人员关注软件在使用的情况,在不同的环境下是否正常操作:操作系统,分辨率,浏览器

        易安装性 提醒注意安装过程

        共存性  分析被测试软件和别的同类型软件是否能够共存 

        易替换 升级、重新安装,一定要注意历史数据的校验

易维护性:开发考虑的比较多,关系更大,还要考虑符合法律法规,行业标准,测试,分析是否容易等等。 具体测试的时候可以暂不考虑。

小结:质量模型分析法主要是用来提醒测试人员,测试过程中不只要覆盖功能测试,还包括,易用性,兼容性,安全测试,性能测试,GUI 测试,稳定性测试,安装测试,文档测试,异常场景测试等等。



版权声明:本文为jinjuana521原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。