您的位置:首页 > 其它

软件测试入门基础

2021-01-08 20:24 423 查看

第一章 软件测试入门基础

本章重点

1、了解软件测试背景及职业规划

2、掌握软件测试的入门基础知识

3、了解软件测试与软件开发的关系

4、理解软件测试的缺陷与要素

一、软件测试背景及职业规划

背景

1、对于软件缺陷不仅有功能上的缺陷还有页面缺陷以及性能缺陷

2、60年代起,为表明程序的正确开始进行测试,直到近几年国内的测试行业也在逐步规范,分工越来越细,测试行业发展也会越来越好

职业规划

1、测试工程师--高级测试工程师—测试经理

岗位描述:

(1)、参与软件产品的需求分析,编写测试计划,设计测试数据和测试用例;

(2)、预先评估软件产品的风险并能提出有效规避方案

(3)、完成对产品的集成测试,对产品的功能、性能测试、压力测试等;

(4)、跟踪测试结果,对修改后的软件版本进行验证。

(5)、根据提交的测试报告分析数据,提出初步的结论

2、测试人员的技术需求

编程基础;测试理论、技术;自动化测试工具;数据库;操作系统;测试管理工具;配置管理工具;Linux相关知识

二、入门基础知识

软件测试定义

使用人工和自动手段来运行或者测试某个被测对象的过程,其目的在于检验被测对象是否满足用户规定的需求或者是弄清楚预期结果与实际结果之间的差异。

软件测试对象:包含很多方面,不仅仅测试是软件,而且包括程序、数据、文档、配置文件等等。需求分析、概要设计、详细设计以及程序编码等各阶段所得到的文档,包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,都应成为软件测试的对象。

软件测试目的

软件测试目的是软件投入运行之前,尽可能多的发现软件中的错误。包含以下观点:

(1)测试目的在于发现错误,但不能证明程序正确;

(2)检查系统是否满足需求;

(3)好的测试用例在于发现未曾发现的错误,成功的测试是发现了错误的测试。

3、软件测试原则

(1)、软件测试应尽早介入项目,不断进行软件测试.

(2)、软件测试用例是设计出来的,由测试输入数据和对应的预期输出结果这两部分组成。

(3)、在设计测试用例时,应该包括合理的输入条件和不合理的输入条件。

(4)、应对每一个测试结果做全面检查。

(5)、充分注意测试中的群集现象,对发现错误较多的程序/模块,要进行更加深入的测试。

(6)、严格执行测试计划,尽量避免测试的随意性。

三、软件测试与软件开发

软件测试与软件开发各阶段的关系图

测试与开发的并行性关系图

四、软件测试的缺陷

什么是软件缺陷(bug)

从产品内部看:软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;

从产品外部看:软件缺陷是系统所需要实现的某种功能的失效或违背。

软件出错机制可描述为:软件错误,软件缺陷,软件故障,软件失效。

  1. 软件错误:是指不可接受的人为错误。
  2. 软件缺陷:是存在于软件(文档、数据、程序)之中的那些不可接受的偏差。
  3. 软件故障:是指软件运行过程中出现的不可接受的内部状态。此时若无适当措施(容错)加以及时处理,便产生软件失效。
  4. 软件失效:是指软件运行时产生的不可接受的外部行为结果。

缺陷产生原因

a)、技术问题:算法错误,语法错误,计算和精度问题,接口参数传递不匹配

b)、团队工作:误解、沟通不充分

c)、软件本身:文档错误、用户使用场景或不一致性所带来的问题,系统的自我恢复或数据的异地备份、灾难性恢复等问题

4)、项目管理问题

缺陷分类

A、软件开发阶段分为3类

(1)、规格说明错误

这类错误是指规格说明与问题定义不一致所产生的错误

(2)、设计错误

这是在设计阶段产生的错误,它使系统的设计与需求规格说明中的功能说明不相符。

(3)、编码错误

编码过程中的错误

   B、软件测试阶段缺陷分为5类

(1)、功能错误

(2)、系统错误

(3)、加工错误

(4)、数据错误

(5)、编码错误

练习:

  1. 为什么软件产品规格说明书中缺陷最多?
  2. 所有的缺陷都要被修复吗?
  3. 假如你发现了一个软件缺陷,但开发人员从各个角度论证这不是缺陷,你如何处理?

五、软件测试缺陷的要素

软件缺陷的生命周期

发现—打开—修复—关闭

软件缺陷的严重程度

(1)、致命 :系统任何一个主要功能完全丧失、用户数据受到破坏、系统崩溃、悬挂、死机或者危及人身安全

(2)、严重 : 系统的主要功能部分丧失、数据不能保存,系统所提供的功能或服务受到明显的影响

(3)、一般 : 系统的部分功能没有完全实现,但不影响用户的正常使用,例如:提示信息不太准确;或用户界面差、操作时间长等一些问题。

(2)、较小 : 使操作者不方便或遇到麻烦,但它不影响功能的操作和执行,如个别的不影响产品理解的错别字、文字排列不整齐等一些小问题。

软件缺陷的优先级

(1)、立即解决 :缺陷导致系统几乎不能使用或测试不能继续,需立即修复  

(2)、高优先级 : 缺陷严重,影响测试,需要优先考虑

(3)、正常排队 : 缺陷需要正常排队等待修复

(2)、低优先级: 缺陷可以在开发人员有时间的时候被纠正

 


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: