第1章 软件测试基本概念(Week1,3月3日)
一、对软件的认识
1. 什么是软件
2. 软件的分类
3. 软件开发的生命周期模型
(1)瀑布模型
(2)Scrum
其实对用瀑布模型这种臃肿不堪、要求严格。而无法适应软件开发周期变化的开发模型,渐渐兴起向更轻型的软件开发方法演化。
敏捷方法试图通过小型的,自我管理的团队用短小的合作发布周期来鼓励迭代式软件开发方法,软件的质量贯穿敏捷软件开发每一个阶段。敏捷软件开发方法有Scrum、极限编程(XP, EXtreme Programing)、测试驱动开发(TDD)、重构和持续集成。
Scrum是敏捷方法里面最出名的。Scrum是一个敏捷开发框架,由一个开发过程、几种角色以及一套规范的实施方法组成。它可以被用于软件开发,项目维护,也可以被用来作为一种管理敏捷项目的框架。它定义了4种主要的角色,产品拥有者(Product Owner),负责产品的远景规划,平衡所有利益相关者的利益,确定不同的产品需求积压的优先级等,是开发团队和客户或最终用户之间的联络点;利益相关者(Stakholder),与产品之间有直接或间接的利益关系,通常是客户或最终用户代表,负责收集编写产品需求,审查项目成果等;Scrum专家(Scrum Master),Scrum专家负责指导开发团队进行Scrum开发与实践,他也是开发团队与产品拥有者交流的联络点;团队成员,即项目开发人员。其核心思想为:
- 以故事为基础的需求条目化,以任务为基础的实现条目化。(Product Backlog,Spring Backlog)
- 2-4周的短周期迭代,而每天又是一个最小的迭代。(Product Backlog,Spring Backlog)
- 基于持续集成思想的进度和质量可视化(看板,燃尽图)。

二、对软件测试的认识
1. 软件为什么要测试
2. 什么是Bug
3. 什么是软件测试
4. 软件测试职业
5. 软件测试的未来
三、测试用例
1. 测试用例定义
2. 测试用例Excel模板
3. 测试用例Word模板
4. 测试管理工具
测试管理工具,是指用工具对软件的整个测试输入、执行过程和测试结果进行管理的过程,可以提高回归测试的效率、大幅提升测试实践、测试质量、用例复用、需求覆盖等。
目前上市场上主流的软件测试管理工具有:MTM(Microsoft测试管理器)、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.请对黑盒测试的优点和缺点进行简单分析。
第1章 软件测试基本概念(Week1,3月3日)的更多相关文章
- 20190813 On Java8 第一章 对象的概念
第一章 对象的概念 抽象 Alan Kay 总结了对象的五大基本特征 万物皆对象. 程序是一组对象,通过消息传递来告知彼此该做什么. 每个对象都有自己的存储空间,可容纳其他对象. 每个对象都有一种类型 ...
- PostgreSQL Replication之第一章 理解复制概念(1)
PostgreSQL Replication系列翻译自PostgreSQL Replication一书 在本章中,将会介绍不同的复制概念,您会了解哪些类型的复制对哪一种实用场景是最合适的. 在本章的最 ...
- 文件系统取证分析(第11章:NTFS概念)
/* Skogkatt 开始翻译于2015-01-24,仅作为学习研究之用,谢绝转载. 2015-01-31更新MFT entry 属性概念. 2015-02-01翻译完成. 译注:我翻译这本书的这三 ...
- Vue.js-01:第一章 - 一些基础概念
一.前言 Vue.React.Angular,当今前端界的三驾马车,作为传统的后端程序员,前端再也不是我们想的那种切切图就可以了,第一次接触的话,先了解了解一些基础的概念. 学习系列目录地址:http ...
- Linux/Unix系统编程手册 第二章:基本概念
本章预热与后续系统编程有关的概念. 术语“操作系统”通常包含2种含义:一是指完整的软件包,包括管理计算机资源的核心组件,已经附带的标准软件:二是独指管理硬件的内核. 内核具有诸多概功能,包括: 进程管 ...
- PostgreSQL Replication之第一章 理解复制概念(3)
1.3 使用分片和数据分配 本节您将了解基本可扩展性技术,例如数据库分片.分片被广泛应用于高端系统并提供一个简单而且可靠的扩展设置方式来向外扩展.近年来,分片已经成为一种扩大专业系统规模的标准方式. ...
- PostgreSQL Replication之第一章 理解复制概念(2)
1.2不同类型的复制 现在,您已经完全地理解了物理和理论的局限性,可以开始学习不同类型的复制了. 1.2.1 同步和异步复制 我们可以做的第一个区分是同步复制和异步复制的区别. 这是什么意思呢?假设我 ...
- 第一章 zookeeper基础概念
1.ZooKeeper是什么 ZooKeeper为分布式应用提供了高效且可靠的分布式协调服务,提供了统一命名服务. 配置管理和分布式锁等分布式的基础服务.在解决分布式数据一致性方面, ZooKeepe ...
- 《JavaScript 高级程序设计》第三章:基本概念
目录 语法 标识符 严格模式 关键字 保留字 变量 数据类型 运算符 表达式与语句 语法 "语法"指的是一门语言的书写风格,JavaScript 的语法风格很类似于 C 以及 Ja ...
随机推荐
- poj 1715 Hexadecimal Numbers 排列组合
/** 大意: 给定16进制数的16个字母,,求第k大的数,,要求数的长度最大为8.,并且每个数互不相同. 思路: 从高到低挨个枚举,每一位能组成的排列数 ,拿最高位来说,能做成的排列数为15*A(1 ...
- C# Thread Programming Start
引言 1.理解多线程 2. 线程异步与线程同步 3.创建多线程应用程序 3.1通过System.Threading命名空间的类构建 3.1.1异步调用线程 3.1.2并发问题 3.1.3线程同步 3. ...
- 命名空间“System.Web.Mvc”中不存在类型或命名空间“Ajax”(是否缺少程序集引用?)
原文 http://www.cnblogs.com/LJP-JumpAndFly/p/4109602.html 好吧,非常激动的说,这个问题搞了我一个晚上,网上的帖子太少了,好像不超过2篇,而且说得 ...
- android应用Dialog跳转到Activity
public void back(Context context){ intent = new Intent(); intent.setClass(context, IBookActivity.cla ...
- python pythonic是什么?
原文地址:http://faassen.n--tree.net/blog/view/weblog/2005/08/06/0 注:Martijn 是 Zope 领域的专家,他为 Zope 系列产品做了许 ...
- 我在北京找工作(二):java实现算法<1> 冒泡排序+直接选择排序
工作.工作.找工作.经过1个多星期的思想斗争还是决定了找JAVA方面的工作,因为好像能比PHP的工资高点.呵呵 :-) (其实我这是笑脸,什么QQ输入法,模拟表情都没有,忒不人性化了.) 言归正传, ...
- 在UITouch事件中画圆圈-iOS8 Swift基础教程
这篇教程主要内容展示如何利用Core Graphics Framework画圆圈,当用户点击屏幕时随机生成不同大小的圆,这篇教程在Xcode6和iOS8下编译通过. 打开Xcode,新建项目选择Sin ...
- js 验证手机号 以及身份证正则表达式
手机号:① /^1(3[0-9]{9}|5[0-35-9][0-9]{8}|7[07][0-9]{8}|8[25-9][0-9]{8})$/ ② /^1(3\d|5[0-35-9]|7[07]|8[2 ...
- Android 开发 AirPlay Server
安卓上开发 AirPlay Server 主要是参考了和修改了 DroidAirPlay项目 , 和Airplay 协议 1, 将DroidAirPlay 下载下来 2, Eclipse 新建一个 ...
- php 学习笔记 数组3
15.使用数组 1).并集(union) array_merge(array1,array2,array3..) 函数把两个或多个数组合并为一个数组,后面覆盖前面 2). 交集(intersecti ...