首页 > 代码库 > 第1章 软件测试基本概念

第1章 软件测试基本概念

一、对软件的认识

1. 什么是软件

2. 软件的分类

3. 软件开发的生命周期模型

(1)瀑布模型

(2)Scrum

    其实对用瀑布模型这种臃肿不堪、要求严格。而无法适应软件开发周期变化的开发模型,渐渐兴起向更轻型的软件开发方法演化。

    敏捷方法试图通过小型的,自我管理的团队用短小的合作发布周期来鼓励迭代式软件开发方法,软件的质量贯穿敏捷软件开发每一个阶段。敏捷软件开发方法有Scrum、极限编程(XP, EXtreme Programing)、测试驱动开发(TDD)、重构和持续集成。   

    Scrum是敏捷方法里面最出名的。Scrum是一个敏捷开发框架,由一个开发过程、几种角色以及一套规范的实施方法组成。它可以被用于软件开发,项目维护,也可以被用来作为一种管理敏捷项目的框架。它定义了4种主要的角色,产品拥有者(Product Owner),负责产品的远景规划,平衡所有利益相关者的利益,确定不同的产品需求积压的优先级等,是开发团队和客户或最终用户之间的联络点;利益相关者(Stakholder),与产品之间有直接或间接的利益关系,通常是客户或最终用户代表,负责收集编写产品需求,审查项目成果等。其核心思想为:

  • 以故事为基础的需求条目化,以任务为基础的实现条目化。(Product Backlog,Spring Backlog)
  • 2-4周的短周期迭代,而每天又是一个最小的迭代。(Product Backlog,Spring Backlog)
  • 基于持续集成思想的进度和质量可视化(看板,燃尽图)。

二、对软件测试的认识

1. 软件为什么要测试

2. 什么是Bug

3. 什么是软件测试

4. 软件测试职业

5. 软件测试的未来

 三、测试用例

1. 测试用例定义

2. 测试用例Excel模板

3. 测试用例Word模板

4. 测试管理工具

    测试管理工具,是指用工具对软件的整个测试输入、执行过程和测试结果进行管理的过程,可以提高回归测试的效率、大幅提升测试实践、测试质量、用例复用、需求覆盖等。

    目前上市场上主流的软件测试管理工具有:TestDirector(Mecury公司TD,8.0后改成HP QC)、TestManaer(IBM)、TestLink(开源组织)、TestCenter(上海泽众)等。

    测试管理包含的内容有:测试框架、测试计划与组织、测试过程管理、测试分析与缺陷管理。

5. 编写测试测试用例注意事项

四、黑盒测试和白盒测试

1. 标识测试用例的方法

2. 黑盒测试

3. 白盒测试

4. 总结

五、静态测试和动态测试

1. 静态测试

2. 动态测试

3. 黑白盒测试和静动态测试之间的关系

============================================

练习:

1. 软件=编程?

2. 软件测试=程序测试?

3. 软件按照用户划分,分为()和()。

4. 画出瀑布开发模型。

5. 传统瀑布式开发的主要弱点是()。

6. 广义Bug,泛指软件在生命周期的各个阶段与()不符的问题。

7. 狭义Bug,仅看做()阶段所发现的问题。

8. 需求和设计阶段发现的问题,用()表示。

9. 开发编码阶段发现的问题,用()表示。

10.交付使用阶段发现的问题,用()表示。

11.Bug的3种类型?

12.测试工程师的主要工作是()、()、()。

13.软件测试是软件开发的重要环节,进行软件测试的目的是()

A.证明软件错误不存在  B.证明软件错误的存在  C.改正程序所有的错误  D.发现程序所有的错误

14.什么是软件测试?

15.从维恩图的角度谈谈对软件测试的理解?

16.请画出软件测试的V模型。

17.什么是测试用例?

18.测试用例可以在哪些软件中编写?()、()、()、()、()、()。

19.在哪个阶段开始写测试用例比较好?()

A.测试计划  B.测试设计  C.测试执行  D.测试评估

20.编写测试用例需要花费大量时间,在软件测试过程中,应该尽可能不写测试用例,直接进行测试。()

21.Excel模板,每个用例占一页,描述得交清楚,但比较分散,适合写性能测试用例。()

22.黑白盒测试和静动态测试之间的关系,以下哪项描述是正确的。(           )

A.黑盒测试是动态测试,不是静态测试

B.白盒测试是静态测试,不是动态测试

C.动态测试既不是黑盒测试,也不是白盒测试

D.静态测试有可能是黑盒测试,也有可能是白盒测试

23.白盒测试依据详细设计文档,利用不同的逻辑覆盖率达到某种程度的                 

24.以下哪项不是白盒测试的优点(     )。

A.从用户的角度测试,很容易被理解和接受

B.检测代码中的每条路径和分支

C.揭示已藏在代码中的错误

D.对代码的测试进行比较彻底

25.测试用例,指的是在软件测试执行之前设计的一套详细的测试方案,包括测试环境、测试步骤、                和预期结果。

26.动态测试是指不实际运行被测软件,而只是静态地检查程序代码、界面或文档中可能存在的错误的过程。(       )

27.软件测试按是否运行划分可分为黑盒测试和白盒测试。(      )

28.通过充分的测试就能保障软件产品的质量。(      )

29.以下哪项不是白盒测试的缺点(       )。

A.白盒测试投入较大,成本较高

B.白盒测试不验证规格的正确性

C.测试用例之间可能存在严重的冗余。

D.无法检查代码中遗漏的路径和数据敏感性错误

30.黑盒测试把被测的软件看做是一个黑盒子,只关心软件的输入数据和                

31.什么是黑盒测试?

32.什么是白盒测试?

33.请对黑盒测试的优点和缺点进行简单分析。