关于软件项目开发的测试基本流程
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关于软件项目开发 的测试基本流程
2012.02.06
1
7/26/2013
软件项目测试基本流程
软件项目测试目的 软件项目测试的基本过程 附A:自动化测试工具的市场风云 附B:主流测试工具介绍
2
7/26/2013
软件项目测试目的?
验证需求?找缺陷? 是手段 保证软件质量?QA的职责 测试是一种服务,服务于整个项目组,给关键 涉众提供定期的、准确的、可信的信息,通过 测试结果的沟通和共享来指导项目。
黑盒测试用例
性能测试用例
–
8
7/26/2013
基本过程 — 测试执行与管理
准备测试环境
条目名称 检查内容
硬件环境是否与拓扑描述一致
软件环境是否与软件环境列表中描述的一致 应用部署是否成功 测试辅助工具是否部署成功 软件参数设置是否符合要求 数据是否与数据要求描述表中描述一致 上次测试是否引入了额外的数据而没有清除
17
7/26/2013
附B:测试工具 — 测试管理工具
厂商
HP IBM
工具
Quality Center Rational TestManager
备注
原主打产品TestDirector,业内最强大、使用最广泛的测试管理工具之一,可与QTP、 WinRunner、LoadRunner等集成,也可与MS Office、IBM Rational等产品集成 原Rational产品中专业对软件测试资源进行管理的强大工具。包括测试用例管理、测试执 行管理、测试脚本和报告管理等。另外可与Robot结合做性能测试,更可以和RFT、RFP、CC、 CQ等集成使用 是完全可以与HP Quality Center媲美的软件测试管理工具,包括测试计划、工作流、任务 跟踪和统计分析等功能,它可以替代IBM Rational Manual Tester,Rational Clear Quest甚至Rational Test Manager 原Compuware公司产品,与原Compuware产品集成紧密 原Segue产品,与原Segue产品集成紧密 面向软件开发生命周期的管理工具,包括Policy Center、Process Center、Project Center、Test Center、Report Center五大模块,其中Test Center有对测试过程和测试资 源的管理 RadView公司2006年推出的TestView工具套件,里边包括WebLoad,WebFT以及TestView Manager三个产品,如今TestView工具套件不再升级 类似于IBM Rational TestManager,只侧重测试用例、测试执行、测试结果分析的功能 与EggPlant集成,实现对其测试用例和测试脚本的构建、存储、执行、分析等功能
输入需求规格说明书 确定阶段的测试范围和任务 确定测试策略和方法 确定测试环境与辅助工具 确定测试周期与资源 确定测试风险分析 输入项目计划书
测试计划
5
7/26/2013
基本过程 — 测试设计与开发
设计测试环境
指定系统的软硬件环境、数据环境设计以及环境的 维护方法
辅助工具开发
根据测试需要开发辅助工具或脚本编写,如服务器 性能监控,市场数据模拟等
免费的自动化测试框架,通过Ruby脚本的强大编程能力,基于Watir的强大接口,可实 现对WEB应用程序的自动化测试
免费的自动化测试框架,支持Ruby、Java、Perl、Python等语言的脚本开发,适合WEB 应用程序的自动化测试 7/26/2013
16
附B:测试工具 — 性能/压力测试工具
厂商
录制/回放
简单易用,但后期维护成本高
脚本模块化
功能函数化,增加重用性
测试库构架
多脚本共用,重用性大大提高,增加初期开发成本以减少后期维护成本
数据驱动框架
可以快速增加相似测试,适用于测试对象流程固定不变(仅仅数据发生变化)
关键字驱动框架(表驱动框架)
独立于应用程序
混合的测试自动化框架
– –
基于测试用例,易于维护和管理 数据准备和维护不简单(用例数据依赖化)
Micro Focus IBM Oracle RadView Minq Microsoft Microsoft Facilita Quest 开源
SilkPerformer RFT Empirix E-Load WebLoad PureLoad Application Center Test Web Application Stress Tool ForeCast BenchMark Factory for Database JMeter
6
7/26/2013
基本过程 — 测试设计与开发
设计和生成测试用例(1)
–
测试用例的作用
测试用例是交付给顾客的产品中的一部分,起到了提高可信度 的作用 提交测试效率,是回归测试的基础,自动化测试脚本的依据 对需求覆盖的完整性 有效性 清晰性 可理解性 可维护性
–
测试用例的要求
Байду номын сангаас
备注
Mercury Quicktest Professional,替代Winrunner
Micro Focus
Micro Focus IBM IBM Oracle
支持VBA脚本,侧重于应用软件的业务逻辑测试
替代收购来的Compuware QARun IBM Rational Functional Tester , 支持JAVA和.NET开发的WEB应用程序和图形界面 应用程序的自动化测试,目前还有针对SAP等插件 ,取代Robot的地位 IBM最新推出的针对Web Service进行自动化测试的工具 应用于WEB应用软件的自动化功能测试
开源
PushToTest
OpenSTA
TestMaker
在JMeter之初使用普遍,后来被JMeter打败;如今它还是仅支持WEB应用的性能测试
免费产品,可对HTTP, HTTPS, SOAP, XML-RPC, SMTP, POP3, IMAP下的JAVA应用程序做单 元测试、集成测试、系统功能测试、系统性能测试等,脚本语言采用最新的Jython
HP
Micro Focus QALoad
工具
Mercury LoadRunner
备注
历史最悠久、行业地位最高、市场份额最大、使用最广泛、业内最专业的性能测试工具
原Compuware公司性能测试工具主打产品,目前业内主流的大型性能测试工具之一,支持HTTP、 HTTPS、SOAP、XML、Streaming Media、Winsock、JAVA、.NET、Citrix、Oracle Forms、SAP等 多种协议技术 原Segue公司性能测试工具主打产品,全球性能测试工具市场排名第二,增强了对Web Service性 能测试的能力,它的性能瓶颈诊断与分析功能,在某些方面比Loadrunner还强大 IBM Rational Performance Tester, 替代IBM Rational Robot + TestManager,在性能测试市 场与HP、Microsoft、Micro Focus、RadView等独占鳌头 是目前业内主流性能测试工具之一,主要支持HTTP的WEB应用程序的性能测试和监控分析 全面支持WEB应用程序的性能测试执行、监控、分析,全球有2000多家公司使用它做性能测试 商用,它专注于对WEB应用系统进行常规的压力、负载、稳定性测试。与PureAgent结合,可以诊 断WEB服务器的响应时间、资源利用率等 如今的Microsoft Visual Studio Test Edition内性能测试功能仍然以它为主 微软早期的小型性能测试工具,现已不升级,主要适合ASP、.NET开发的WEB应用系统进行性能测 试 是一款强大的主流性能测试工具,支持多种开发技术与网络协议,如WEB、JAVA、.NET、Citrix, 并有一套辅助分析工具可对JAVA、主流数据库产品、网络进行分析和诊断 专门对数据库做性能测试和容量规划的工具 目前业内使用最广泛的性能测试工具,支持HTTP/HTTPS、SOAP、JDBC、LDAP、JMS等,但监控、 分析功能不如商业工具
上海泽众
Minq
AutoRunner
PureTest
实现对WEB和Windows应用进行自动化功能测试的过程,脚本为JAVA
现已免费,专注于对WEB应用程序进行功能自动化测试,并即时对WEB页面元素进行检测, 对HTTP请求、响应进行诊断分析
开源
ThoughtWorks
Ruby + Watir
Selenium
责任人
维护方法
硬件拓扑结构图
软件环境列表 应用部署检查 测试辅助工具部署检查 软件参数设置表 数据要求描述表 数据维护脚本或是录入 (Import)方式
硬件环境
软件环境
数据环境
9
7/26/2013
基本过程 — 测试执行与管理
录制或编写自动化测试脚本(功能测试)
–
测试框架的选择
Parasoft
RadView AutomatedQA Seapine Microsoft
面向WEB应用程序的回归功能测试工具
对WEB系统进行自动化功能测试的工具, TestView工具套件不再升级 除了功能测试外,完全可以做性能测试、压力测试等,具有强大的API接口,licence 也比较便宜 支持常规的Windows应用程序、WEB应用程序 基于微软的.NET平台,可对.NET技术下的一切程序进行白盒功能测试、代码诊断测试、 黑盒功能测试和系统性能测试,目前仅微软内部使用
3
7/26/2013
软件项目测试的基本过程
制定测试计划 测试设计与开发
–
– –
测试环境设计 测试用例设计与开发 辅助工具开发
准备测试环境 实施测试
测试执行与管理
– –
生成测试总结与报告
7/26/2013
4
基本过程 — 制定测试计划
明确测试任务和测试方法,保持测试实施过程的顺畅沟 通,跟踪和控制测试进度,应对测试过程中的各种变更。
20世纪末的自动化测试天下,呈现三足鼎立的局面
Mercury WinRunner
Rational Robot Segue SilkTest
14
7/26/2013
附A:自动化测试工具的市场风云(2)
进入21世纪,天下格局风云骤变 2002年IBM宣布收购Rational公司,Rational全套产品与DB2、 WebSphere、Lotus、Tivoli等并列为IBM软件几大产品家族 2006年HP以45亿美元收购Mercury 2006年4月Borland公司收购Segue (赛格瑞) 2008年Oracle收购Empirix旗下E-Test Suite整套工具套件 2009年5月Micro Focus以7500万美元现金收购Borland 2009年5月Micro Focus以8000万美元收购Compuware全部的质量 保证解决方案与产品 2009年11月Compuware以2.95亿美元收购高明网络(Gomez)公司, Gomez成为Compuware的网络性能部门
7
7/26/2013
基本过程 — 测试设计与开发
设计和生成测试用例(2)
–
测试用例的设计方法
白盒测试用例
– – – – – –
逻辑覆盖法 (语句/判定/条件/路径分析) 等价类划分法 边界值分析法 因果图法 错误猜测法 (根据之前版本的经验) 场景设计法 场景设计法 (覆盖重要和主要的流程)
15
7/26/2013
附B:测试工具 — 功能自动化测试工具
厂商
HP QTP
工具
TestPartner
SilkTest RFT Rational Service Tester for SOA Empirix E-Tester WebKing WebFT TestComplete QA Wizard Visual Studio Test Edition
12
7/26/2013
基本过程 — 生成测试报告(2)
项目简介
测试环境 测试资源
测试内容 测试的结果 测试数据分析 遗留问题
内容简洁,突出重点 有综述性地统计信息,反映全貌
报告内容
与历史数据有比较,评估风险 要有分析结论,使报告更有价值 把其他的详细数据付成附件
13
7/26/2013
附A:自动化测试工具的市场风云(1)
7/26/2013
10
基本过程 — 测试执行与管理
实施测试 根据定义的测试策略和测试方法执行测试用例或测试脚本
单元测试 集成测试 系统测试 性能测试 用户测试 缺陷管理 自动化测试 手工测试
11
7/26/2013
基本过程 — 生成测试报告(1)
测试报告是把测试的过程和结果写成文档,并 对发现的问题和缺陷进行分析,为纠正软件的 存在的质量问题提供依据,同时为软件验收和 交付打下基础
2012.02.06
1
7/26/2013
软件项目测试基本流程
软件项目测试目的 软件项目测试的基本过程 附A:自动化测试工具的市场风云 附B:主流测试工具介绍
2
7/26/2013
软件项目测试目的?
验证需求?找缺陷? 是手段 保证软件质量?QA的职责 测试是一种服务,服务于整个项目组,给关键 涉众提供定期的、准确的、可信的信息,通过 测试结果的沟通和共享来指导项目。
黑盒测试用例
性能测试用例
–
8
7/26/2013
基本过程 — 测试执行与管理
准备测试环境
条目名称 检查内容
硬件环境是否与拓扑描述一致
软件环境是否与软件环境列表中描述的一致 应用部署是否成功 测试辅助工具是否部署成功 软件参数设置是否符合要求 数据是否与数据要求描述表中描述一致 上次测试是否引入了额外的数据而没有清除
17
7/26/2013
附B:测试工具 — 测试管理工具
厂商
HP IBM
工具
Quality Center Rational TestManager
备注
原主打产品TestDirector,业内最强大、使用最广泛的测试管理工具之一,可与QTP、 WinRunner、LoadRunner等集成,也可与MS Office、IBM Rational等产品集成 原Rational产品中专业对软件测试资源进行管理的强大工具。包括测试用例管理、测试执 行管理、测试脚本和报告管理等。另外可与Robot结合做性能测试,更可以和RFT、RFP、CC、 CQ等集成使用 是完全可以与HP Quality Center媲美的软件测试管理工具,包括测试计划、工作流、任务 跟踪和统计分析等功能,它可以替代IBM Rational Manual Tester,Rational Clear Quest甚至Rational Test Manager 原Compuware公司产品,与原Compuware产品集成紧密 原Segue产品,与原Segue产品集成紧密 面向软件开发生命周期的管理工具,包括Policy Center、Process Center、Project Center、Test Center、Report Center五大模块,其中Test Center有对测试过程和测试资 源的管理 RadView公司2006年推出的TestView工具套件,里边包括WebLoad,WebFT以及TestView Manager三个产品,如今TestView工具套件不再升级 类似于IBM Rational TestManager,只侧重测试用例、测试执行、测试结果分析的功能 与EggPlant集成,实现对其测试用例和测试脚本的构建、存储、执行、分析等功能
输入需求规格说明书 确定阶段的测试范围和任务 确定测试策略和方法 确定测试环境与辅助工具 确定测试周期与资源 确定测试风险分析 输入项目计划书
测试计划
5
7/26/2013
基本过程 — 测试设计与开发
设计测试环境
指定系统的软硬件环境、数据环境设计以及环境的 维护方法
辅助工具开发
根据测试需要开发辅助工具或脚本编写,如服务器 性能监控,市场数据模拟等
免费的自动化测试框架,通过Ruby脚本的强大编程能力,基于Watir的强大接口,可实 现对WEB应用程序的自动化测试
免费的自动化测试框架,支持Ruby、Java、Perl、Python等语言的脚本开发,适合WEB 应用程序的自动化测试 7/26/2013
16
附B:测试工具 — 性能/压力测试工具
厂商
录制/回放
简单易用,但后期维护成本高
脚本模块化
功能函数化,增加重用性
测试库构架
多脚本共用,重用性大大提高,增加初期开发成本以减少后期维护成本
数据驱动框架
可以快速增加相似测试,适用于测试对象流程固定不变(仅仅数据发生变化)
关键字驱动框架(表驱动框架)
独立于应用程序
混合的测试自动化框架
– –
基于测试用例,易于维护和管理 数据准备和维护不简单(用例数据依赖化)
Micro Focus IBM Oracle RadView Minq Microsoft Microsoft Facilita Quest 开源
SilkPerformer RFT Empirix E-Load WebLoad PureLoad Application Center Test Web Application Stress Tool ForeCast BenchMark Factory for Database JMeter
6
7/26/2013
基本过程 — 测试设计与开发
设计和生成测试用例(1)
–
测试用例的作用
测试用例是交付给顾客的产品中的一部分,起到了提高可信度 的作用 提交测试效率,是回归测试的基础,自动化测试脚本的依据 对需求覆盖的完整性 有效性 清晰性 可理解性 可维护性
–
测试用例的要求
Байду номын сангаас
备注
Mercury Quicktest Professional,替代Winrunner
Micro Focus
Micro Focus IBM IBM Oracle
支持VBA脚本,侧重于应用软件的业务逻辑测试
替代收购来的Compuware QARun IBM Rational Functional Tester , 支持JAVA和.NET开发的WEB应用程序和图形界面 应用程序的自动化测试,目前还有针对SAP等插件 ,取代Robot的地位 IBM最新推出的针对Web Service进行自动化测试的工具 应用于WEB应用软件的自动化功能测试
开源
PushToTest
OpenSTA
TestMaker
在JMeter之初使用普遍,后来被JMeter打败;如今它还是仅支持WEB应用的性能测试
免费产品,可对HTTP, HTTPS, SOAP, XML-RPC, SMTP, POP3, IMAP下的JAVA应用程序做单 元测试、集成测试、系统功能测试、系统性能测试等,脚本语言采用最新的Jython
HP
Micro Focus QALoad
工具
Mercury LoadRunner
备注
历史最悠久、行业地位最高、市场份额最大、使用最广泛、业内最专业的性能测试工具
原Compuware公司性能测试工具主打产品,目前业内主流的大型性能测试工具之一,支持HTTP、 HTTPS、SOAP、XML、Streaming Media、Winsock、JAVA、.NET、Citrix、Oracle Forms、SAP等 多种协议技术 原Segue公司性能测试工具主打产品,全球性能测试工具市场排名第二,增强了对Web Service性 能测试的能力,它的性能瓶颈诊断与分析功能,在某些方面比Loadrunner还强大 IBM Rational Performance Tester, 替代IBM Rational Robot + TestManager,在性能测试市 场与HP、Microsoft、Micro Focus、RadView等独占鳌头 是目前业内主流性能测试工具之一,主要支持HTTP的WEB应用程序的性能测试和监控分析 全面支持WEB应用程序的性能测试执行、监控、分析,全球有2000多家公司使用它做性能测试 商用,它专注于对WEB应用系统进行常规的压力、负载、稳定性测试。与PureAgent结合,可以诊 断WEB服务器的响应时间、资源利用率等 如今的Microsoft Visual Studio Test Edition内性能测试功能仍然以它为主 微软早期的小型性能测试工具,现已不升级,主要适合ASP、.NET开发的WEB应用系统进行性能测 试 是一款强大的主流性能测试工具,支持多种开发技术与网络协议,如WEB、JAVA、.NET、Citrix, 并有一套辅助分析工具可对JAVA、主流数据库产品、网络进行分析和诊断 专门对数据库做性能测试和容量规划的工具 目前业内使用最广泛的性能测试工具,支持HTTP/HTTPS、SOAP、JDBC、LDAP、JMS等,但监控、 分析功能不如商业工具
上海泽众
Minq
AutoRunner
PureTest
实现对WEB和Windows应用进行自动化功能测试的过程,脚本为JAVA
现已免费,专注于对WEB应用程序进行功能自动化测试,并即时对WEB页面元素进行检测, 对HTTP请求、响应进行诊断分析
开源
ThoughtWorks
Ruby + Watir
Selenium
责任人
维护方法
硬件拓扑结构图
软件环境列表 应用部署检查 测试辅助工具部署检查 软件参数设置表 数据要求描述表 数据维护脚本或是录入 (Import)方式
硬件环境
软件环境
数据环境
9
7/26/2013
基本过程 — 测试执行与管理
录制或编写自动化测试脚本(功能测试)
–
测试框架的选择
Parasoft
RadView AutomatedQA Seapine Microsoft
面向WEB应用程序的回归功能测试工具
对WEB系统进行自动化功能测试的工具, TestView工具套件不再升级 除了功能测试外,完全可以做性能测试、压力测试等,具有强大的API接口,licence 也比较便宜 支持常规的Windows应用程序、WEB应用程序 基于微软的.NET平台,可对.NET技术下的一切程序进行白盒功能测试、代码诊断测试、 黑盒功能测试和系统性能测试,目前仅微软内部使用
3
7/26/2013
软件项目测试的基本过程
制定测试计划 测试设计与开发
–
– –
测试环境设计 测试用例设计与开发 辅助工具开发
准备测试环境 实施测试
测试执行与管理
– –
生成测试总结与报告
7/26/2013
4
基本过程 — 制定测试计划
明确测试任务和测试方法,保持测试实施过程的顺畅沟 通,跟踪和控制测试进度,应对测试过程中的各种变更。
20世纪末的自动化测试天下,呈现三足鼎立的局面
Mercury WinRunner
Rational Robot Segue SilkTest
14
7/26/2013
附A:自动化测试工具的市场风云(2)
进入21世纪,天下格局风云骤变 2002年IBM宣布收购Rational公司,Rational全套产品与DB2、 WebSphere、Lotus、Tivoli等并列为IBM软件几大产品家族 2006年HP以45亿美元收购Mercury 2006年4月Borland公司收购Segue (赛格瑞) 2008年Oracle收购Empirix旗下E-Test Suite整套工具套件 2009年5月Micro Focus以7500万美元现金收购Borland 2009年5月Micro Focus以8000万美元收购Compuware全部的质量 保证解决方案与产品 2009年11月Compuware以2.95亿美元收购高明网络(Gomez)公司, Gomez成为Compuware的网络性能部门
7
7/26/2013
基本过程 — 测试设计与开发
设计和生成测试用例(2)
–
测试用例的设计方法
白盒测试用例
– – – – – –
逻辑覆盖法 (语句/判定/条件/路径分析) 等价类划分法 边界值分析法 因果图法 错误猜测法 (根据之前版本的经验) 场景设计法 场景设计法 (覆盖重要和主要的流程)
15
7/26/2013
附B:测试工具 — 功能自动化测试工具
厂商
HP QTP
工具
TestPartner
SilkTest RFT Rational Service Tester for SOA Empirix E-Tester WebKing WebFT TestComplete QA Wizard Visual Studio Test Edition
12
7/26/2013
基本过程 — 生成测试报告(2)
项目简介
测试环境 测试资源
测试内容 测试的结果 测试数据分析 遗留问题
内容简洁,突出重点 有综述性地统计信息,反映全貌
报告内容
与历史数据有比较,评估风险 要有分析结论,使报告更有价值 把其他的详细数据付成附件
13
7/26/2013
附A:自动化测试工具的市场风云(1)
7/26/2013
10
基本过程 — 测试执行与管理
实施测试 根据定义的测试策略和测试方法执行测试用例或测试脚本
单元测试 集成测试 系统测试 性能测试 用户测试 缺陷管理 自动化测试 手工测试
11
7/26/2013
基本过程 — 生成测试报告(1)
测试报告是把测试的过程和结果写成文档,并 对发现的问题和缺陷进行分析,为纠正软件的 存在的质量问题提供依据,同时为软件验收和 交付打下基础