软件测试基本理论与技术教材Word格式.docx

上传人:b****9 文档编号:13067566 上传时间:2022-10-04 格式:DOCX 页数:111 大小:1.24MB
下载 相关 举报
软件测试基本理论与技术教材Word格式.docx_第1页
第1页 / 共111页
软件测试基本理论与技术教材Word格式.docx_第2页
第2页 / 共111页
软件测试基本理论与技术教材Word格式.docx_第3页
第3页 / 共111页
软件测试基本理论与技术教材Word格式.docx_第4页
第4页 / 共111页
软件测试基本理论与技术教材Word格式.docx_第5页
第5页 / 共111页
点击查看更多>>
下载资源
资源描述

软件测试基本理论与技术教材Word格式.docx

《软件测试基本理论与技术教材Word格式.docx》由会员分享,可在线阅读,更多相关《软件测试基本理论与技术教材Word格式.docx(111页珍藏版)》请在冰豆网上搜索。

软件测试基本理论与技术教材Word格式.docx

3.1控制流测试 27

3.2数据流测试 27

3.3程序插装 28

3.4程序变异测试 28

3.5白盒测试工具 28

3.6软件缺陷分析 32

第4章集成测试 35

4.1集成测试概述 35

4.2集成测试策略 36

4.3集成测试用例设计 38

4.4集成测试过程 39

第5章系统测试 41

5.1性能测试 41

5.3容量测试 44

5.4健壮性测试 48

5.5安全性测试 49

5.6可靠性测试 50

5.7恢复性测试与备份测试 52

5.8兼容性测试 52

5.9安装性测试 54

5.10可用性测试 54

5.11配置性测试 56

5.12文档性测试 57

5.14GUI测试 60

5.15 验收测试 63

5.16回归测试 65

6.17系统测试工具及其应用 66

第6章软件评审 68

6.1软件评审概述 68

6.2需求评审 68

6.3概要设计评审 69

6.4详细设计评审 69

6.5数据库设计评审 69

第7章测试管理 71

7.1 建立测试管理体系 71

7.2 测试管理的基本内容 71

7.3 测试管理的原则 74

7.4 测试管理的实践 74

7.5 常用的测试管理工具 76

第二篇 Linux操作系统 78

1.1安装与登陆命令 79

1.2文件处理命令 85

1.3系统管理命令 92

1.4网络操作命令 100

第三篇 SQL语言基础 106

1.1数据定义语言(DDL) 107

1.2数据操作语言DML 107

1.3数据控制语言DCL 107

1.4数据库事务控制 107

第一篇软件测试基本理论与技术

第1章软件测试概述

随着计算机技术的飞速发展,计算机系统的规模和复杂性急剧增加,其软件开发成本以及由于软件故障而造成的经济损失也正在增加,软件质量问题已成为人们共同关注的焦点。

软件测试是对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。

随着软件系统规模和复杂性的增加,进行专业化高效软件测试的要求越来越严格,软件测试职业的价值逐步得到了认可,软件测试技术已作为一门新兴产业而快速发展起来了。

1.1计算机系统的软件可靠性问题

随着对计算机需求和依赖的与日俱增,计算机系统的规模和复杂性急剧增加,使得计算机软件的数量以惊人的速度急剧膨胀。

与此同时,计算机出现故障引起系统失效的可能性也逐渐增加。

由于计算机硬件技术的进步,元器件可靠性的提高,硬件设计和验证技术的成熟,硬件故障相对显得次要了,软件故障正逐渐成为导致计算机系统失效和停机的主要因素。

1.2软件测试的目的和意义

定义1:

1983年IEEE(国际电子电气工程师协会)提出的软件工程标准术语中给软件测试下的定义是:

“使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别”。

定义2:

软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例,并利用这些测试用例去执行程序,以发现软件故障的过程。

该定义强调寻找故障是测试的目的。

定义3:

软件测试是一种软件质量保证活动,其动机是通过一些经济有效的方法,发现软件中存在的缺陷,从而保证软件质量。

1.3软件测试过程

1.单元测试

目的:

检测程序模块中有无故障存在

对象:

软件设计的最小单位,与程序设计和编程实现关系密切

2.集成测试

发现与接口有关的模块之间的问题

方法:

非增式集成测试法和增式集成测试法

(1)非增式集成测试法

对每一个模块进行单元测试,在此基础上按程序结构图将各模块连接起来,把连接后的程序当作一个整体进行测试

(2)增式集成测试法

不断地把待测模块连接到已测模块集(或其子集)上,对待测模块进行测试,直到最后一个模块测试完毕

3.确认测试

目的:

对软件产品进行评估以确定其是否满足软件需求的过程

4.系统测试

针对系统中各个组成部分进行的综合性检验,证明系统的性能测试人员要求:

(1)系统开发人员不能进行系统测试。

(2)系统开发组织不能负责系统测试。

5.验收测试

向用户表明所开发的软件系统能够像用户所预定的那样工作主要任务:

(1)明确规定验收测试通过的标准;

(2)确定验收测试方法;

(3)确定验收测试的组织和可利用的资源;

(4)确定测试结果的分析方法;

(5)制定验收测试计划并进行评审;

(6)设计验收测试的测试用例;

(7)审查验收测试的准备工作;

(8)执行验收测试;

(9)分析测试结果,决定是否通过验收。

1.4软件测试与软件开发的关系

1.4.1软件开发过程

正规的软件开发过程一般包括六个阶段,即:

第一阶段计划

第二阶段需求分析

第三阶段设计

第四阶段程序编写

第五阶段测试

第六阶段运行和/维护

这六个阶段构成了软件的生存周期。

1.4.2软件测试在软件开发中的作用

项目规划阶段:

负责整个测试阶段的监控。

需求分析阶段:

确定测试需求分析,制定系统测试计划。

测试需求分析是指产品生存周期中测试所需的资源、配置、各阶段评审通过的标准等。

概要设计和详细设计阶段:

制定集成测试计划和单元测试计划。

编码阶段:

开发相应的测试代码或测试脚本。

测试阶段:

实施测试,并提交相应的测试报告。

1.4.3软件测试过程模型

软件测试过程V模型

特点:

非常明确地表明了测试的不同级别,清晰地展示了软件测试与开发之间的关系

软件测试过程W模型

1.4.4软件测试环境的搭建

测试环境是指用来运行软件的环境。

测试环境=硬件+软件+网络+数据准备+测试工具

硬件环境:

主要是指PC机、笔记本电脑、服务器、各种PDA终端等。

例如现要测试微软的word2003这一款软件,那么是在PC机上测试还是在笔记本电脑上测试?

如果在PC机上测试,那么CPU是奔腾2.4G,还是赛扬1.7G?

内存是DDR512M,还是SD128M?

不同的机器类型,不同的机器配置,必然会导致不同的反应速度,因此测试一款软件时一定要考虑硬件配置。

软件环境:

主要是软件运行的操作系统。

比如word2003是在Window2003下检测,还是在WindowXP下检测,这里可能会有兼容性的问题。

网络环境:

主要指的是C/S结构还是B/S结构。

例如要测试微软的outlook2003这一款软件,那么是在局域网里测,还是在互联网里测?

如果在局域网中测,那么是在10M的局域网里测,还是在100M的局域网里测?

不同的网络类型,不同的传输速度,必然会导致不同的收发速度,因此测试一款软件时也不能忽视网络的因素。

数据准备:

主要指的是测试数据的准备。

测试数据的准备应考虑数据量和真实性,即尽可能获取大量的真实的数据,包括正确和错误的数据。

当无法取得真实数据时应尽可能模拟出大量的数据。

测试工具:

目前市场上的测试工具很多,可分为静态测试工具、动态测试工具、黑盒测试工具、白盒测试工具、测试执行评估工具、测试管理工具等,因此,对测试工具的选择是一个比较重要的问题,应根据测试需求和实际条件来选择已有的测试工具,或购买、自行开发相应的测试工具。

搭建软件测试环境还应注意以下几点:

尽量模拟用户的真实使用环境;

测试环境中尽量不要安装其它与被测软件无关的软件,但最好安装杀毒软件,以确保系统没有病毒;

测试环境应与开发环境独立。

1.5软件测试的发展历程和现状

发展历程:

上世纪50年代,英国著名的计算机科学家图灵就给出了软件测试的原始定义:

测试是程序正确性证明的一种极端实验形式。

直到上世纪70年代以后,随着计算机硬件技术的进步与成熟,软件在整个系统中所占的地位越来越重要,软件规模和复杂性大大增加。

软件可靠性面临前所未有的危机,给软件测试工作带来了挑战,测试的意义逐渐被人们认识,软件测试的研究开始受到重视,是软件测试技术发展最活跃的时期。

1975年,Goodenough首次提出了软件测试理论,从而把软件测试这一实践性很强的学科提高到理论的高度。

1982年,美国北卡来纳大学召开了首次软件测试技术会议,是软件测试与软件质量研究人员和开发人员的第一次聚会

现状:

就目前软件工程发展的状况而言,软件测试仍然是较为薄弱的一个方面。

不仅测试理论,已有的测试方法也不能满足当前软件开发的实际需求。

尤其是进入20世纪90年代后,计算机技术日趋成熟,软件应用范围逐步扩大,软件规模和复杂性急剧增加,与此同时,计算机出现故障引起系统失效的可能性也逐渐增加。

1.6我国软件测试产业现状

随着软件外包行业的逐渐兴起和人们对软件质量保障意识的加强,中国软件企业已开始认识到,软件测试的广度和深度决定了中国软件企业的前途命运。

以占中国软件外包总量近85%的对日软件外包来说,业务内容基本都针对测试环节。

软件外包中对测试环节的强化,直接导致了软件外包企业对测试人才的大量需求。

近年来,几乎所有的软件企业均存在不同程度的测试人才缺口,软件测试工程师已成为了亟待补充的关键技术工种之一。

IBM、百度、华为、惠普、盛大网络、联想集团等国内外大型IT企业均表现出对成熟软件测试人才的期盼,而微软、三星、西门子、思科、华为3COM等多家国内外IT巨头则相继在全国各大高校招兵买马,并把软件测试人才的招聘放在了突出的位置。

国内软件测试人才紧缺的现状已经凸现出来。

1.7软件测试工具

白盒测试工具

(1)静态测试工具

职能:

主要集中在需求文档、设计文档以及程序结构上,可以进行类型分析、接口分析、输入输出规格说明分析等。

工具:

McCabe&

Associates公司开发的McCabeVisualQualityToolSet分析工具;

ViewLog公司开发的LogiScope分析工具;

SoftwareResearch公司开发的TestWork/Advisor分析工具及SoftwareEmancipation公司开发的Discover分析工具,北京邮电大学开发的DTS缺陷测试工具等。

(2)动态测试工具

功能确认与接口测试、覆盖率分析、性能分析、内存分析等

Compuware公司开发的DevPartner软

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1