软件测试技术实验指导书20011年5月
- 格式:doc
- 大小:1.99 MB
- 文档页数:27
软件测试作业指导书1. 概述软件测试作业是为了帮助学生掌握软件测试的基本原理和技术,提高其测试能力和质量保证水平而设计的。
本指导书旨在指导学生完成软件测试作业,并解释作业的要求、流程和评分标准。
2. 作业要求2.1 任务描述本次作业要求学生选择一个软件系统,并进行功能测试和性能测试。
2.2 功能测试要求2.2.1 环境搭建学生需要搭建适当的测试环境,包括安装所需的软件、配置测试用例数据库等。
2.2.2 测试用例设计学生需要设计一组测试用例,覆盖系统的主要功能,并确保每个测试用例具有较高的覆盖率。
2.2.3 测试执行学生需要执行设计好的测试用例,并记录测试过程中的操作步骤和结果。
2.2.4 缺陷管理学生需要及时发现并记录系统中出现的缺陷,并进行分类和跟踪。
2.3 性能测试要求2.3.1 环境搭建学生需要搭建适当的性能测试环境,包括配置测试服务器、安装性能测试工具等。
2.3.2 性能测试计划学生需要制定详细的性能测试计划,包括测试目标、测试场景、负载模型等。
2.3.3 测试执行学生需要执行性能测试,并记录测试过程中的关键指标和结果。
2.3.4 性能分析学生需要对性能测试结果进行分析,并给出合理的优化建议。
3. 流程指导3.1 功能测试流程3.1.1 环境搭建根据作业要求,学生需要搭建适用的测试环境,包括操作系统、数据库、开发工具等。
3.1.2 测试用例设计根据系统需求和功能规格说明书,学生需要设计测试用例,并确保用例具有较高的覆盖率。
3.1.3 测试执行学生按照设计的测试用例执行测试,记录测试过程中的操作步骤和结果。
在执行过程中注意记录和管理发现的缺陷。
3.1.4 缺陷管理学生需要根据发现的缺陷进行分类和跟踪,并及时通知开发人员进行修复。
3.2 性能测试流程3.2.1 环境搭建学生需要搭建适用的性能测试环境,确保测试服务器能够模拟所需的负载。
3.2.2 性能测试计划学生需要制定性能测试计划,明确测试目标、测试场景和负载模型。
软件测试实验指导书软件测试课程组湖南工程学院计算机与通信学院实验1 黑盒测试实验一、实验目的1、能熟练应用黑盒测试技术进行测试用例设计;2、能对测试用例进行优化设计;二、实验环境Windows环境,Word和Visio或者相关的办公软件, C/C++或Java编程环境;三、实验内容1.题目一:电话号码问题某城市电话号码由三部分组成。
它们的名称和内容分别是:(1)地区码:空白或3位数字;(2)前缀:非'0'或'1'的3位数字;(3)后缀:4 位数字。
假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。
根据该程序的规格说明,作等价类的划分,并设计测试方案。
2.题目二:三角形问题根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。
“一个程序读入三个整数。
把此三个数值看成是一个三角形的三个边。
这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。
”3.题目三:日期问题用决策表测试法测试以下程序:该程序有三个输入变量month、day、year(month 、day和year均为整数值,并且满足:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。
例如,输入为2004 年11月29日,则该程序的输出为2004年12月1日。
(1) 分析各种输入情况,列出为输入变量month 、day 、year 划分的有效等价类。
(2) 分析程序的规格说明,并结合以上等价类划分的情况,给出问题规定的可能采取的操作(即列出所有的动作桩)。
(3) 根据(1) 和(2) ,画出简化后的决策表。
四、实验步骤(1)根据黑盒测试技术设计测试用例(参照附件1),主要考虑等价类划分和边界值分析测试技术;(2)根据所学知识确定优化策略(原则:用最少的用例检测出更多的缺陷、软件测试的充分性与冗余性考虑),设计题目1、2两套测试用例;(3)根据设计的测试用例集进行测试;五、实验要求(1)根据题目要求编写测试用例文档(参照附件1进行用例设计);(2)必须要有相应的用例步骤;(3)撰写实验报告;六、实验思考题(1)在实际的测试中,如何设计测试用例才能达到用最少的测试用例检测出最多的缺陷;(2)在进行用例设计时,如何考虑软件测试用例的充分性和减少软件测试用例的冗余性;七、实验心得与体会实验2白盒测试实验一、实验目的:通过本次实验,使学生掌握利用白盒测试方法对程序进行功能测试,学会利用路径覆盖、语句覆盖、条件组合覆盖法设计测试用例。
软件系统测试作业指导书第1章软件测试基础 (4)1.1 软件测试概念 (4)1.2 软件测试目的和意义 (4)1.3 软件测试分类 (4)第2章软件测试过程 (5)2.1 测试计划 (5)2.1.1 目的与范围 (5)2.1.2 测试策略 (5)2.1.3 测试资源 (5)2.1.4 测试进度安排 (5)2.1.5 风险评估与应对措施 (6)2.2 测试设计 (6)2.2.1 测试需求分析 (6)2.2.2 测试用例设计 (6)2.2.3 测试数据准备 (6)2.2.4 测试环境搭建 (6)2.3 测试执行 (6)2.3.1 测试用例执行 (6)2.3.2 缺陷报告 (6)2.3.3 测试结果记录 (6)2.4 缺陷跟踪 (6)2.4.1 缺陷分类与优先级 (6)2.4.2 缺陷生命周期管理 (6)2.4.3 缺陷跟踪工具 (7)2.4.4 缺陷分析 (7)第3章单元测试 (7)3.1 单元测试概述 (7)3.2 单元测试方法 (7)3.2.1 白盒测试 (7)3.2.2 黑盒测试 (7)3.3 单元测试工具 (8)第4章集成测试 (8)4.1 集成测试概述 (8)4.2 集成测试策略 (8)4.3 集成测试用例设计 (9)第5章系统测试 (9)5.1 系统测试概述 (9)5.2 功能测试 (9)5.2.1 目的 (9)5.2.2 测试内容 (9)5.2.3 测试方法 (10)5.3.1 目的 (10)5.3.2 测试内容 (10)5.3.3 测试方法 (10)5.4 安全测试 (10)5.4.1 目的 (10)5.4.2 测试内容 (10)5.4.3 测试方法 (11)第6章验收测试 (11)6.1 验收测试概述 (11)6.1.1 验收测试概念 (11)6.1.2 验收测试目的 (11)6.1.3 验收测试范围 (11)6.1.4 验收测试执行主体 (11)6.2 验收测试方法 (12)6.2.1 功能测试 (12)6.2.2 非功能测试 (12)6.2.3 用户场景测试 (12)6.2.4 回归测试 (13)6.3 验收测试用例设计 (13)6.3.1 功能测试用例设计 (13)6.3.2 非功能测试用例设计 (13)6.3.3 用户场景测试用例设计 (13)6.3.4 回归测试用例设计 (13)第7章回归测试 (14)7.1 回归测试概述 (14)7.1.1 基本概念 (14)7.1.2 目的 (14)7.1.3 重要性 (14)7.2 回归测试策略 (14)7.2.1 全量回归测试 (14)7.2.2 增量回归测试 (14)7.2.3 差异化回归测试 (15)7.3 回归测试用例选取 (15)第8章自动化测试 (15)8.1 自动化测试概述 (15)8.1.1 自动化测试概念 (15)8.1.2 自动化测试分类 (15)8.1.3 自动化测试应用场景 (16)8.2 自动化测试工具 (16)8.2.1 Selenium (16)8.2.2 JMeter (16)8.2.3 Appium (16)8.3 自动化测试框架 (17)8.3.2 Cucumber (17)8.3.3 Robot Framework (17)8.3.4 Jenkins (17)第9章软件测试管理 (17)9.1 测试团队组织 (17)9.1.1 测试团队构成 (17)9.1.2 测试团队职责 (17)9.1.3 测试团队培训与评估 (18)9.2 测试过程管理 (18)9.2.1 测试计划 (18)9.2.2 测试设计 (18)9.2.3 测试执行 (18)9.2.4 缺陷管理 (18)9.2.5 测试报告 (18)9.3 测试风险管理 (18)9.3.1 风险识别 (18)9.3.2 风险评估 (18)9.3.3 风险应对 (18)9.3.4 风险监控 (19)第10章软件测试案例与实践 (19)10.1 软件测试案例概述 (19)10.1.1 测试案例定义 (19)10.1.2 测试案例的重要性 (19)10.1.3 测试案例的分类 (19)10.1.4 测试案例的组成部分 (19)10.2 软件测试案例设计方法 (19)10.2.1 黑盒测试案例设计方法 (19)10.2.2 白盒测试案例设计方法 (19)10.2.3 灰盒测试案例设计方法 (19)10.2.4 静态测试案例设计方法 (19)10.2.5 动态测试案例设计方法 (19)10.2.6 基于风险的测试案例设计方法 (19)10.3 软件测试案例实施与总结 (19)10.3.1 测试环境搭建 (19)10.3.2 测试数据准备 (19)10.3.3 测试执行与记录 (19)10.3.4 缺陷跟踪与管理 (19)10.3.5 测试结果分析 (19)10.3.6 测试总结报告 (19)10.3.7 测试案例迭代与优化 (19)第1章软件测试基础1.1 软件测试概念软件测试是指在软件开发生命周期的各个阶段,依据规定的要求和标准,采用适当的测试方法、工具和策略,对软件产品进行评估、验证和确认的活动。
软件开发的测试与调试作业指导书第1章测试与调试基础 (3)1.1 软件测试概述 (3)1.1.1 测试的定义 (3)1.1.2 测试的目的 (3)1.1.3 测试的原则 (3)1.1.4 测试的分类 (4)1.2 调试技术与策略 (4)1.2.1 调试的定义 (4)1.2.2 调试策略 (4)1.2.3 调试技术 (4)1.3 测试与调试的关系 (4)第2章测试计划与策略 (5)2.1 测试计划的制定 (5)2.1.1 目的与意义 (5)2.1.2 内容与要求 (5)2.2 测试策略的制定 (5)2.2.1 目的与意义 (5)2.2.2 内容与要求 (6)2.3 测试计划与策略的执行 (6)2.3.1 测试环境搭建 (6)2.3.2 测试用例设计与执行 (6)2.3.3 缺陷跟踪与管理 (6)2.3.4 测试报告 (6)2.3.5 测试总结与改进 (6)第3章单元测试 (6)3.1 单元测试概述 (6)3.1.1 单元测试的定义 (7)3.1.2 单元测试的目的 (7)3.1.3 单元测试的原则 (7)3.1.4 单元测试的实施步骤 (7)3.2 单元测试用例设计 (7)3.2.1 测试用例设计方法 (8)3.2.2 测试用例要素 (8)3.3 单元测试工具与框架 (8)3.3.1 单元测试工具 (8)3.3.2 单元测试框架 (8)第4章集成测试 (9)4.1 集成测试概述 (9)4.2 集成测试用例设计 (9)4.3 集成测试方法与实施 (9)第5章系统测试 (10)5.1 系统测试概述 (10)5.1.1 基本概念 (10)5.1.2 目的 (10)5.1.3 原则 (11)5.1.4 方法 (11)5.2 系统测试用例设计 (11)5.2.1 设计方法 (11)5.2.2 设计要求 (12)5.3 系统测试的实施与监控 (12)5.3.1 实施流程 (12)5.3.2 监控方法 (12)5.3.3 注意事项 (12)第6章验收测试 (12)6.1 验收测试概述 (12)6.2 验收测试用例设计 (13)6.2.1 测试用例设计原则 (13)6.2.2 测试用例设计方法 (13)6.3 验收测试的实施与评估 (13)6.3.1 验收测试实施流程 (13)6.3.2 验收测试评估指标 (14)第7章功能测试 (14)7.1 功能测试基础 (14)7.1.1 功能测试概述 (14)7.1.2 功能测试分类 (14)7.1.3 功能测试指标 (14)7.2 功能测试用例设计 (15)7.2.1 功能测试用例要素 (15)7.2.2 功能测试用例设计方法 (15)7.3 功能测试工具与实施 (15)7.3.1 功能测试工具选择 (15)7.3.2 功能测试实施步骤 (15)7.3.3 功能测试注意事项 (16)第8章安全性测试 (16)8.1 安全性测试概述 (16)8.2 安全性测试用例设计 (16)8.2.1 身份验证测试 (16)8.2.2 授权测试 (16)8.2.3 数据加密测试 (17)8.2.4 网络安全测试 (17)8.2.5 会话管理测试 (17)8.3 安全性测试方法与实施 (17)8.3.1 黑盒测试 (17)8.3.2 白盒测试 (17)8.3.3 灰盒测试 (18)第9章代码审查与静态分析 (18)9.1 代码审查基础 (18)9.1.1 代码审查概念 (18)9.1.2 代码审查的目的 (18)9.1.3 代码审查的方法 (18)9.2 静态分析技术 (18)9.2.1 静态分析概念 (18)9.2.2 静态分析工具 (19)9.2.3 静态分析的优势 (19)9.3 代码审查与静态分析的实施 (19)9.3.1 代码审查的准备工作 (19)9.3.2 静态分析的实施 (19)9.3.3 代码审查与静态分析的协同 (19)第10章缺陷管理 (20)10.1 缺陷生命周期管理 (20)10.1.1 缺陷报告 (20)10.1.2 缺陷确认 (20)10.1.3 缺陷修复 (20)10.1.4 缺陷验证 (20)10.1.5 缺陷跟踪 (20)10.2 缺陷跟踪工具 (20)10.2.1 功能要求 (20)10.2.2 常用工具介绍 (21)10.3 缺陷分析与改进措施 (21)10.3.1 缺陷分析 (21)10.3.2 改进措施 (21)第1章测试与调试基础1.1 软件测试概述1.1.1 测试的定义软件测试是在规定的条件下对软件进行操作,以发觉错误、验证软件功能和功能的过程。
《软件测试技术》实验指导书适用专业:软件工程(本科)实验学时:30一、适用范围大纲适用于软件工程专业本科教学使用。
二、课程名称《软件测试技术》三、实验教学目的和要求1、实验目的本实验课程配合《软件测试技术》理论课同步开设,其中包括验证型、设计型和综合型实验。
本实验课程着眼于理论与应用的结合,注重培养学生软件测试的实际动手能力,增强软件工程项目的质量管理意识。
通过实验教学,使学生掌握软件测试的方法和技术,并能运用软件测试工具进行自动化测试。
2、实验要求实验前要充分做好准备工作:1.复习和掌握与本实验有关的知识内容;2.预习、思考实验内容;3.对实验内容进行分析和设计。
实验过程中,实验者必须服从指导教师和实验室工作人员的安排,遵守纪律与实验制度,爱护设备及卫生。
在指定的实验时间内,必须到实验室内做实验。
对于上机过程中出现的问题,尽量先独立思考和解决;对于难以解决的问题可以和同学交流或询问老师;对于同一个实验题目,可以考虑多种方法来实现,然后比较并选择出一种较为有效的方法来实现。
对于设计型和验证型实验,实验时一人一组,独立上机。
对于综合型实验,每四人组成一个小组,由组长来组织管理小组成员,共同完成实验内容。
四、实验项目与学时分配序号实验项目学时数实验类型1实例程序设计4设计2功能性测试(黑盒测试)6设计、验证4单元测试5QTP 的使用6LoadRunner 的使用7WinRunner 的使用8Web 系统测试2设计、验证4验证4验证2验证4综合合计30实验 1 测试的实例程序的设计( 4 学时)一、实验目的完成测试程序的编写,后续的实验将以这些程序作为测试对象用不同的测试方法来进行测试。
二、实验内容1、设计三角形问题的程序2、设计 Nextdate 函数的程序3、设计佣金问题的程序4、简单 ATM 系统5、货币转换器三、实验步骤1、第 2 周完成各程序的总体设计和前两个程序的实现并进行调试。
2、第3、4 周实现后 3 个程序的功能。
软件测试实验指导书10版《软件测试》实验指导书软件工程专业实验一测试计划一、实验目的1.掌握测试计划的内容和编制。
2.通过给定案例练习编写测试计划。
二、基本知识1.具有微软Windows和office Word的使用经验2.熟悉软件测试的基本知识3.熟悉测试计划的概念和内容4.了解案例的功能和使用步骤。
三、实验设备及环境1.Windows操作系统2.Office Word应用软件3.案例系统软件4.系统软件需求分析说明书和开发计划四、实验内容XXXX系统测试计划1.测试计划标识符FR201011-001-ST2.引言1)目标制定飞机订票系统测试计划的目标是:(此处学生填写相应目标)2)背景(暂空)3)范围(此处学生填写相应内容)4)引用文档(暂空)3.测试依据GB/T4.方法5.测试项通过准则6.暂停准则和恢复要求7.测试交付项8.测试任务9.环境要求10.职责11.人员配备、培训要求和资源配置12.进度13.风险和应急实验二测试概要设计一、实验目的3.掌握测试计划的内容和编制。
4.通过给定案例练习编写测试计划。
二、基本知识1.具有微软Windows和office Word的使用经验2.熟悉软件测试的基本知识3.熟悉测试计划的概念和内容4.了解案例的功能和使用步骤。
三、实验设备及环境5.Windows操作系统6.Office Word应用软件7.案例系统软件8.系统软件需求分析说明书和开发计划四、实验内容实验三测试详细设计5.掌握测试计划的内容和编制。
6.通过给定案例练习编写测试计划。
二、基本知识1.具有微软Windows和office Word的使用经验2.熟悉软件测试的基本知识3.熟悉测试计划的概念和内容4.了解案例的功能和使用步骤。
三、实验设备及环境9.Windows操作系统10.Office Word应用软件11.案例系统软件12.系统软件需求分析说明书和开发计划四、实验内容实验四自动化功能测试一、实验目的7.掌握QuickTest Professional(QTP)操作界面的组成。
软件测试技术实战手册(含测试用例编写)第一章测试基础理论 (2)1.1 软件测试概述 (2)1.2 测试类型与级别 (2)1.2.1 测试类型 (2)1.2.2 测试级别 (2)1.3 测试原则与方法 (3)1.3.1 测试原则 (3)1.3.2 测试方法 (3)第二章测试用例设计 (3)2.1 测试用例编写原则 (3)2.2 测试用例设计方法 (4)2.3 测试用例模板与规范 (4)第三章功能测试 (4)3.1 功能测试概述 (4)3.2 功能测试策略 (5)3.3 功能测试用例编写 (5)第四章功能测试 (6)4.1 功能测试概述 (6)4.2 功能测试指标 (6)4.3 功能测试用例编写 (7)第五章自动化测试 (8)5.1 自动化测试概述 (8)5.2 自动化测试工具选型 (8)5.3 自动化测试用例编写 (9)第六章安全测试 (10)6.1 安全测试概述 (10)6.2 安全测试方法 (10)6.3 安全测试用例编写 (10)第七章兼容性测试 (11)7.1 兼容性测试概述 (11)7.2 兼容性测试策略 (11)7.3 兼容性测试用例编写 (12)第八章稳定性测试 (13)8.1 稳定性测试概述 (13)8.2 稳定性测试方法 (13)8.3 稳定性测试用例编写 (14)第九章回归测试 (14)9.1 回归测试概述 (15)9.2 回归测试策略 (15)9.3 回归测试用例编写 (15)第十章测试管理 (16)10.1 测试计划与管理 (16)10.2 测试进度与监控 (16)10.3 测试报告与问题追踪 (17)第一章测试基础理论1.1 软件测试概述软件测试是软件开发过程中不可或缺的一个环节,旨在保证软件的质量和可靠性。
它通过对软件进行一系列的检查、验证和评估,发觉并修复其中的缺陷,以满足用户需求和预期。
软件测试的目标是尽可能地在软件交付给用户之前,发觉并解决潜在的问题,从而降低维护成本和风险。
软件测试现场测评作业指导书全文共四篇示例,供读者参考第一篇示例:软件测试现场测评作业指导书一、概述软件测试是软件开发生命周期中非常重要的一个环节,通过测试可以发现和修复软件中的bug,提高软件的质量和稳定性。
软件测试现场测评是一种常用的测试方法,它通过模拟用户的实际使用场景对软件进行全面测试,以验证软件的功能性、性能和稳定性。
本文将指导您如何进行软件测试现场测评作业,帮助您更好地掌握测试的方法和技巧。
二、准备工作在进行软件测试现场测评作业之前,需要进行一些准备工作,以确保测试的顺利进行。
具体的准备工作包括:1. 确定测试的目标和范围:在进行测试之前,需要明确测试的目标和范围,以便有针对性地开展测试工作。
2. 确定测试的时间和地点:确定测试的时间和地点,确保测试人员能够按时参加测试,并提供必要的测试环境和设备。
3. 准备测试用例:根据测试的目标和范围编写测试用例,包括功能测试用例、性能测试用例和稳定性测试用例等。
4. 招募测试人员:根据测试的需求招募合适的测试人员,确保每个测试人员都具有一定的测试经验和技能。
5. 准备测试工具:根据测试的需求准备相应的测试工具,包括自动化测试工具、性能测试工具和缺陷管理工具等。
6. 进行培训和演练:在测试正式开始之前,进行相关培训和演练,帮助测试人员熟悉测试流程和工具,提高测试效率和质量。
三、测试流程软件测试现场测评作业的测试流程通常包括以下几个步骤:1. 测试准备阶段:在测试准备阶段,测试人员需要对测试环境和设备进行检查和调试,确保测试的正常进行。
2. 功能测试阶段:在功能测试阶段,测试人员将根据测试用例对软件的功能进行测试,验证软件是否满足需求规范。
3. 性能测试阶段:在性能测试阶段,测试人员将对软件的性能进行测试,包括响应速度、稳定性和负载能力等。
5. 缺陷整理和反馈:在测试完成后,测试人员需要整理测试结果,将发现的bug和建议反馈给开发人员,以便及时修复和改进。
软件测试流程手册作业指导书第1章软件测试基础 (4)1.1 软件测试概述 (4)1.2 软件测试目的与原则 (4)1.2.1 软件测试目的 (4)1.2.2 软件测试原则 (4)1.3 软件测试分类 (4)1.3.1 按照测试阶段划分 (4)1.3.2 按照测试方法划分 (5)1.3.3 按照测试内容划分 (5)第2章测试计划与策略 (5)2.1 测试计划的制定 (5)2.1.1 目标与范围 (5)2.1.2 测试依据 (5)2.1.3 测试方法与工具 (5)2.1.4 测试团队组织 (5)2.1.5 测试阶段划分 (6)2.1.6 风险评估与应对措施 (6)2.2 测试策略的确定 (6)2.2.1 功能测试策略 (6)2.2.2 功能测试策略 (6)2.2.3 兼容性测试策略 (6)2.2.4 安全性测试策略 (6)2.2.5 用户体验测试策略 (6)2.3 测试资源与时间安排 (6)2.3.1 测试资源 (6)2.3.2 时间安排 (6)2.3.3 测试进度监控 (7)第3章测试需求分析 (7)3.1 需求文档审查 (7)3.1.1 目的 (7)3.1.2 方法 (7)3.1.3 输出 (7)3.2 需求测试范围确定 (7)3.2.1 目的 (7)3.2.2 方法 (7)3.2.3 输出 (7)3.3 需求测试用例设计 (8)3.3.1 目的 (8)3.3.2 方法 (8)3.3.3 输出 (8)第4章测试设计与规划 (8)4.1.1 测试级别 (8)4.1.2 测试类型 (8)4.2 测试用例设计方法 (9)4.2.1 等价类划分法 (9)4.2.2 边界值分析法 (9)4.2.3 因果图法 (9)4.2.4 错误推测法 (9)4.3 测试数据准备 (9)4.3.1 测试数据收集 (9)4.3.2 测试数据整理 (9)4.3.3 测试数据创建 (9)4.3.4 测试数据管理 (9)第5章单元测试 (10)5.1 单元测试概述 (10)5.2 单元测试方法与工具 (10)5.2.1 单元测试方法 (10)5.2.2 单元测试工具 (10)5.3 单元测试用例编写 (10)5.3.1 单元测试用例设计原则 (10)5.3.2 单元测试用例编写步骤 (10)5.3.3 单元测试用例示例 (11)第6章集成测试 (11)6.1 集成测试策略 (11)6.1.1 目的与原则 (11)6.1.2 测试范围 (11)6.1.3 测试环境 (11)6.2 集成测试方法 (12)6.2.1 按照模块耦合度进行集成 (12)6.2.2 采用黑盒测试方法 (12)6.2.3 采用白盒测试方法 (12)6.2.4 灰盒测试 (12)6.3 集成测试用例编写 (12)6.3.1 用例设计原则 (12)6.3.2 用例编写规范 (12)6.3.3 用例管理 (12)第7章系统测试 (13)7.1 系统测试概述 (13)7.2 功能测试 (13)7.2.1 目的 (13)7.2.2 测试方法 (13)7.2.3 测试内容 (13)7.3 非功能测试 (13)7.3.1 功能测试 (13)7.3.3 安全测试 (14)7.3.4 兼容性测试 (14)7.3.5 可用性测试 (14)7.3.6 可靠性测试 (14)第8章验收测试 (14)8.1 验收测试策略 (14)8.1.1 目的 (14)8.1.2 范围 (14)8.1.3 测试环境 (15)8.1.4 测试团队 (15)8.1.5 测试时间安排 (15)8.2 验收测试方法 (15)8.2.1 功能测试 (15)8.2.2 非功能测试 (15)8.2.3 系统集成测试 (16)8.3 验收测试用例编写 (16)8.3.1 用例设计原则 (16)8.3.2 用例编写规范 (16)8.3.3 用例评审 (16)第9章回归测试与缺陷管理 (16)9.1 回归测试策略 (16)9.1.1 回归测试目的 (16)9.1.2 回归测试范围 (16)9.1.3 回归测试方法 (16)9.1.4 回归测试执行 (17)9.2 缺陷生命周期管理 (17)9.2.1 缺陷识别 (17)9.2.2 缺陷报告 (17)9.2.3 缺陷跟踪 (17)9.2.4 缺陷关闭 (17)9.3 缺陷预防与跟踪 (17)9.3.1 缺陷预防措施 (17)9.3.2 缺陷跟踪机制 (18)第10章测试总结与评估 (18)10.1 测试结果统计与分析 (18)10.1.1 测试用例执行情况统计 (18)10.1.2 缺陷统计与分析 (18)10.1.3 覆盖率分析 (18)10.2 测试报告编写 (18)10.2.1 报告结构 (18)10.2.2 测试报告内容 (18)10.2.3 报告撰写要求 (19)10.3 测试团队绩效评估与改进建议 (19)10.3.2 评估结果与分析 (19)10.3.3 改进建议 (19)第1章软件测试基础1.1 软件测试概述软件测试作为软件开发过程中的重要环节,旨在评估和提升软件质量,保证软件产品满足既定需求及用户期望。
软件测试基础作业指导书第1章软件测试概述 (4)1.1 软件测试的定义与目的 (4)1.2 软件测试的基本概念 (4)1.3 软件测试的发展历程 (4)第2章软件测试基础理论 (4)2.1 软件质量与软件测试 (5)2.2 软件测试方法 (5)2.3 软件测试级别与阶段 (5)2.4 软件测试流程 (5)第3章测试用例设计 (6)3.1 测试用例的基本概念 (6)3.2 测试用例设计方法 (6)3.3 测试用例编写与评审 (7)第4章黑盒测试技术 (7)4.1 等价类划分法 (7)4.1.1 确定等价类 (8)4.1.2 划分等价类 (8)4.1.3 测试用例 (8)4.2 边界值分析法 (8)4.2.1 确定边界值 (8)4.2.2 测试用例 (8)4.3 因果图法 (9)4.3.1 构建因果图 (9)4.3.2 测试用例 (9)4.4 决策表法 (9)4.4.1 构建决策表 (9)4.4.2 测试用例 (9)第5章白盒测试技术 (10)5.1 逻辑覆盖测试 (10)5.1.1 语句覆盖 (10)5.1.2 判定覆盖 (10)5.1.3 条件覆盖 (10)5.1.4 判定/条件覆盖 (10)5.1.5 多条件覆盖 (10)5.2 循环测试 (10)5.2.1 循环边界测试 (10)5.2.2 循环遍历测试 (11)5.2.3 循环简化测试 (11)5.2.4 循环变异测试 (11)5.3 程序插桩 (11)5.3.1 代码插桩 (11)5.3.3 静态插桩 (11)5.3.4 动态插桩 (11)5.4 静态代码分析 (11)5.4.1 代码审查 (11)5.4.2 代码走查 (11)5.4.3 静态代码扫描 (12)5.4.4 代码度量分析 (12)第6章摸索性测试 (12)6.1 摸索性测试概述 (12)6.2 摸索性测试方法 (12)6.2.1 漫游测试 (12)6.2.2 模糊测试 (12)6.2.3 反复测试 (12)6.2.4 故意错误测试 (12)6.3 摸索性测试实践 (12)6.3.1 制定测试计划 (13)6.3.2 深入了解被测试软件 (13)6.3.3 不断学习和总结 (13)6.3.4 及时记录和报告问题 (13)6.3.5 沟通与协作 (13)6.3.6 持续改进 (13)第7章自动化测试 (13)7.1 自动化测试概述 (13)7.2 自动化测试工具 (13)7.3 自动化测试框架 (14)7.4 自动化测试用例编写 (14)第8章功能测试与调优 (15)8.1 功能测试概述 (15)8.1.1 定义与目的 (15)8.1.2 重要性 (15)8.2 功能测试指标 (15)8.2.1 响应时间 (15)8.2.2 吞吐量 (15)8.2.3 资源利用率 (16)8.2.4 错误率 (16)8.3 功能测试方法 (16)8.3.1 基准测试 (16)8.3.2 负载测试 (16)8.3.3 压力测试 (16)8.3.4 稳定性测试 (16)8.4 功能调优策略 (16)8.4.1 代码优化 (16)8.4.2 数据库优化 (16)8.4.4 硬件资源优化 (17)8.4.5 网络优化 (17)8.4.6 负载均衡 (17)第9章安全测试 (17)9.1 安全测试概述 (17)9.2 安全漏洞分类 (17)9.2.1 输入验证漏洞 (17)9.2.2 认证和授权漏洞 (17)9.2.3 信息泄露漏洞 (17)9.2.4 会话管理漏洞 (17)9.2.5 错误处理漏洞 (18)9.3 安全测试方法 (18)9.3.1 静态代码分析 (18)9.3.2 动态测试 (18)9.3.3 渗透测试 (18)9.3.4 安全配置检查 (18)9.3.5 安全审计 (18)9.4 安全测试工具 (18)9.4.1 静态代码分析工具 (18)9.4.2 动态测试工具 (18)9.4.3 渗透测试工具 (18)9.4.4 安全配置检查工具 (18)9.4.5 安全审计工具 (18)第10章软件测试管理 (18)10.1 软件测试组织与团队 (18)10.1.1 测试组织结构 (19)10.1.2 测试团队角色与职责 (19)10.1.3 测试团队协作与沟通 (19)10.2 软件测试计划与策略 (19)10.2.1 测试计划概述 (19)10.2.2 测试策略制定 (19)10.2.3 测试计划编制与执行 (19)10.3 软件测试文档管理 (19)10.3.1 测试文档概述 (19)10.3.2 测试文档编写规范 (19)10.3.3 测试文档管理实践 (19)10.4 软件测试风险管理 (19)10.4.1 测试风险识别 (20)10.4.2 测试风险评估与量化 (20)10.4.3 测试风险应对与监控 (20)第1章软件测试概述1.1 软件测试的定义与目的软件测试是在软件开发生命周期中,为发觉和纠正软件产品中的错误,保证软件质量,对软件产品进行评估的过程。
《软件测试技术》实验指导书河北科技大学信息科学与工程学院2011.3目录实验(1)缺陷跟踪系统的使用(一)实验(2)缺陷跟踪系统的使用(二)实验(3)缺陷跟踪系统的使用(三)实验(4)软件测试工具的使用(录制和回放脚本)实验(5)软件测试工具的使用(设置验证点)实验(6)软件测试工具的使用(回归测试)实验(1)缺陷跟踪系统的使用(一)(2学时)1.实验目的:熟悉Rational ClearQuest的工作环境。
学习在Rational ClearQuest环境下软件缺陷的追踪和管理方法。
掌握创建新的schema,创建新的user database并且关联至相应的schema的方法;定义状态转换;创建用户和组账号,分配访问权限并升级用户数据库信息以及进行对软件缺陷追踪过程的管理方法。
2.实验仪器设备微型计算机;网络环境;Windows 2000/XP以上操作系统;Rational ClearQuest安装文件。
3.实验内容创建schema和databases。
登录到clearquest designer,创建一个新的schema,创建新的user database并关联至相应的schema,创建一个新的test database。
4. 实验步骤1)登录到ClearQuest Designera)从开始菜单中选择ClearQuest Designer。
b)在ClearQuest登录对话窗口中,User Name输入admin,Password为空。
c)单击OK。
d)出现Open Schema对话窗口,单击Cancel。
(一般情况下,可以通过Open Schema 对话窗口打开准备使用的schema。
)2)创建新的schema利用ClearQuest Designer,可以以一个已经存在的schema为模版创建一个新的schema。
所有的schema都被保存在schema储存库中。
创建一个以TestStudio schema为模版的新的schema。
软件测试作业指导书(总15页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--附件1.软件可测试性软件可测试性是指提交测试的软件测试传递项具备可测试的特性,包含:一、软件开发者在各开发阶段提交了完善的软件需求说明书、《软件概要设计》、《软件详细设计》,并保持文档按设计更改控制规范的适时更新;二、在各测试阶段提交《测试通知单》(注明必要的说明和测试要求或条件等)、合格测试项。
三、合格测试项是满足下列条件的软件源代码:1、已按设计完整编码或已对全部错误完成修改;2、调试编译合格通过、软件可正常运行;3、除特别注明外,功能、性能按期完成或实现,无明显的低级缺陷;4、相关配置项(如数据库)及配置环境(如硬件及接口)齐全,满足测试要求。
5、实现的功能与软件需求说明书、软件设计说明书一致。
系统测试时提交用户安装版本、提交《用户手册》和《操作手册》且内容与程序逻辑完全一致。
附件2.测试通知单日期:__________________ 编程人员:___________ 测试人员:___________不可测试性传递项不作测试直接返回编程人员修改并填写“提交修改日期”等栏目。
②全表各栏均需填写。
附件3.测试日志附件4测试记录附件5、测试工作程序图附件6、项目类别、项目大小与测试阶段的对应关系所有项目作测试计划、系统测试方案、系统测试、测试分析报告。
根据项目大小、项目类别选作测试用例设计、单元测试、集成测试。
其中项目大小、项目类别由技术委员会确认。
√---测试活动中必须提交的文档或必须经历的测试阶段。
*---测试组可以委托开发小组作的单元测试阶段。
软件测试流程与方法指导书第1章软件测试概述 (4)1.1 软件测试的定义与目的 (4)1.2 软件测试的基本概念 (4)1.3 软件测试的发展历程 (4)第2章软件测试生命周期 (4)2.1 测试计划阶段 (4)2.2 测试设计阶段 (4)2.3 测试执行阶段 (4)2.4 测试总结阶段 (4)第3章软件测试方法 (4)3.1 黑盒测试 (4)3.2 白盒测试 (4)3.3 灰盒测试 (4)3.4 静态测试与动态测试 (5)第4章软件测试类型 (5)4.1 单元测试 (5)4.2 集成测试 (5)4.3 系统测试 (5)4.4 验收测试 (5)第5章测试用例设计 (5)5.1 测试用例的组成 (5)5.2 测试用例设计方法 (5)5.3 测试用例的优先级与分类 (5)5.4 测试用例的维护 (5)第6章缺陷管理 (5)6.1 缺陷生命周期 (5)6.2 缺陷报告 (5)6.3 缺陷跟踪与解决 (5)6.4 缺陷分析 (5)第7章自动化测试 (5)7.1 自动化测试概述 (5)7.2 自动化测试工具选择 (5)7.3 自动化测试框架设计 (5)7.4 自动化测试脚本编写 (5)第8章功能测试 (5)8.1 功能测试概述 (5)8.2 功能测试指标 (5)8.3 功能测试方法 (5)8.4 功能测试工具 (5)第9章安全测试 (5)9.1 安全测试概述 (5)9.3 安全测试工具 (6)9.4 安全测试策略 (6)第10章兼容性测试 (6)10.1 兼容性测试概述 (6)10.2 硬件兼容性测试 (6)10.3 软件兼容性测试 (6)10.4 网络兼容性测试 (6)第11章用户体验测试 (6)11.1 用户体验测试概述 (6)11.2 用户体验测试方法 (6)11.3 用户体验测试工具 (6)11.4 用户体验测试流程 (6)第12章软件测试团队与项目管理 (6)12.1 测试团队组织结构 (6)12.2 测试人员职责与技能要求 (6)12.3 软件测试项目管理 (6)12.4 测试过程改进与优化 (6)第1章软件测试概述 (6)1.1 软件测试的定义与目的 (6)1.2 软件测试的基本概念 (7)1.3 软件测试的发展历程 (7)第2章软件测试生命周期 (7)2.1 测试计划阶段 (7)2.2 测试设计阶段 (8)2.3 测试执行阶段 (8)2.4 测试总结阶段 (9)第3章软件测试方法 (9)3.1 黑盒测试 (9)3.1.1 测试方法 (9)3.1.2 应用场景 (10)3.2 白盒测试 (10)3.2.1 测试方法 (10)3.2.2 应用场景 (10)3.3 灰盒测试 (10)3.3.1 测试方法 (10)3.3.2 应用场景 (10)3.4 静态测试与动态测试 (11)3.4.1 静态测试 (11)3.4.2 动态测试 (11)第4章软件测试类型 (11)4.1 单元测试 (11)4.2 集成测试 (12)4.3 系统测试 (12)第5章测试用例设计 (12)5.1 测试用例的组成 (12)5.2 测试用例设计方法 (13)5.3 测试用例的优先级与分类 (13)5.4 测试用例的维护 (14)第6章缺陷管理 (14)6.1 缺陷生命周期 (14)6.1.1 缺陷生命周期的阶段 (14)6.1.2 缺陷状态转换 (15)6.2 缺陷报告 (15)6.2.1 缺陷报告的要素 (15)6.2.2 缺陷报告的撰写规范 (15)6.3 缺陷跟踪与解决 (15)6.3.1 缺陷跟踪 (15)6.3.2 缺陷解决 (15)6.4 缺陷分析 (16)6.4.1 缺陷分布分析 (16)6.4.2 缺陷原因分析 (16)6.4.3 缺陷预防与改进 (16)第7章自动化测试 (16)7.1 自动化测试概述 (16)7.2 自动化测试工具选择 (16)7.3 自动化测试框架设计 (17)7.4 自动化测试脚本编写 (17)第8章功能测试 (17)8.1 功能测试概述 (17)8.2 功能测试指标 (18)8.3 功能测试方法 (18)8.4 功能测试工具 (18)第9章安全测试 (19)9.1 安全测试概述 (19)9.1.1 安全测试的定义 (19)9.1.2 安全测试的意义 (19)9.1.3 安全测试与其他测试类型的区别 (19)9.2 安全测试方法 (19)9.2.1 静态分析 (19)9.2.2 动态分析 (20)9.2.3 渗透测试 (20)9.3 安全测试工具 (20)9.3.1 静态分析工具 (20)9.3.2 动态分析工具 (20)9.3.3 渗透测试工具 (20)9.4 安全测试策略 (20)9.4.2 风险评估 (21)9.4.3 分阶段进行安全测试 (21)9.4.4 结合自动化测试和手工测试 (21)9.4.5 持续安全测试 (21)第10章兼容性测试 (21)10.1 兼容性测试概述 (21)10.2 硬件兼容性测试 (21)10.3 软件兼容性测试 (21)10.4 网络兼容性测试 (22)第11章用户体验测试 (22)11.1 用户体验测试概述 (22)11.2 用户体验测试方法 (22)11.3 用户体验测试工具 (23)11.4 用户体验测试流程 (23)第12章软件测试团队与项目管理 (24)12.1 测试团队组织结构 (24)12.2 测试人员职责与技能要求 (24)12.3 软件测试项目管理 (25)12.4 测试过程改进与优化 (25)以下是软件测试流程与方法指导书的目录结构:第1章软件测试概述1.1 软件测试的定义与目的1.2 软件测试的基本概念1.3 软件测试的发展历程第2章软件测试生命周期2.1 测试计划阶段2.2 测试设计阶段2.3 测试执行阶段2.4 测试总结阶段第3章软件测试方法3.1 黑盒测试3.2 白盒测试3.3 灰盒测试3.4 静态测试与动态测试第4章软件测试类型4.1 单元测试4.2 集成测试4.3 系统测试4.4 验收测试第5章测试用例设计5.1 测试用例的组成5.2 测试用例设计方法5.3 测试用例的优先级与分类5.4 测试用例的维护第6章缺陷管理6.1 缺陷生命周期6.2 缺陷报告6.3 缺陷跟踪与解决6.4 缺陷分析第7章自动化测试7.1 自动化测试概述7.2 自动化测试工具选择7.3 自动化测试框架设计7.4 自动化测试脚本编写第8章功能测试8.1 功能测试概述8.2 功能测试指标8.3 功能测试方法8.4 功能测试工具第9章安全测试9.1 安全测试概述9.2 安全测试方法9.3 安全测试工具9.4 安全测试策略第10章兼容性测试10.1 兼容性测试概述10.2 硬件兼容性测试10.3 软件兼容性测试10.4 网络兼容性测试第11章用户体验测试11.1 用户体验测试概述11.2 用户体验测试方法11.3 用户体验测试工具11.4 用户体验测试流程第12章软件测试团队与项目管理12.1 测试团队组织结构12.2 测试人员职责与技能要求12.3 软件测试项目管理12.4 测试过程改进与优化第1章软件测试概述1.1 软件测试的定义与目的软件测试作为软件开发过程中的重要环节,旨在保证软件产品满足既定需求,并具备高质量、高可靠性和高稳定性。
软件测试实验指导计算机工程学院测试环境配置1.setting Junit(1)start EclipseSelect windows-preferences-java-build path-class path–class path variables(2)click new,the figure of new variable entry is shown.(3)name JUNIT_LIBselect file-选择JUnit插件所对应的JAR文件所在地,在Eclipse的安装目录的plugins目录中2.JUNIT的组成框架其中,junit.framework和junit.runner是两个核心包。
junit.framework负责整个测试对象的框架junit.runner负责测试驱动Junit的框架又可分为:A、被测试的对象。
B、对测试目标进行测试的方法与过程集合,可称为测试用例(TestCase)。
C、测试用例的集合,可容纳多个测试用例(TestCase),将其称作测试包(TestSuite)。
D、测试结果的描述与记录。
(TestResult)。
E、每一个测试方法所发生的与预期不一致状况的描述,称其测试失败元素(TestFailure)F、JUnit Framework中的出错异常(AssertionFailedError)。
JUnit框架是一个典型的Composite模式:TestSuite可以容纳任何派生自Test 的对象;当调用TestSuite对象的run()方法是,会遍历自己容纳的对象,逐个调用它们的run()方法。
3.JUnit中常用的接口和类Test接口——运行测试和收集测试结果Test接口使用了Composite设计模式,是单独测试用例(TestCase),聚合测试模式(TestSuite)及测试扩展(TestDecorator)的共同接口。
它的public int countTestCases()方法,它来统计这次测试有多少个TestCase,另外一个方法就是public void run(TestResult),TestResult是实例接受测试结果,run方法执行本次测试。
《 软件测试方法和技术 》 实验指导书
太原理工大学计算机科学与技术学院 2011 年 5 月 1
《软件测试方法和技术》实验 适用专业:软件工程 实验类别:专业实验 实验时数:8学时
一、 实验课程的性质、目的和任务 1. 培养学生初步掌握软件测试技术实验的技能。 2. 验证所学理论、巩固所学知识并加深理解。 3. 对学生进行实验研究的基本训练,通过实验主要掌握黑盒法和白盒法设计测试用例的技术,运用自动化测试工具LoadRunner对Web软件进行测试,为日后的软件开发和软件测试打下良好的基础。
二、 实验课程的内容、要求及学时分配 实验一、 使用白盒测试方法中的逻辑覆盖技术测试以下程序段。(2学时) (1)实验目的:通过实验主要掌握用白盒法中的逻辑覆盖测试技术设计测试用例以及测试流程图的绘制。 (2)实验内容:测试以下程序段 Void DoWork(int x,int y,int z) { 1 int k=0,j=0; 2 if((x>0)&&(z<10)) 3 { 4 k=x*y-1; 5 j=sqrt(k); 6 } 7 if((x==4)||(y>5)) 8 j=x*y+10; 9 j=j%3; 10 } (3) 实验要求:说明:程序段中每行开头的数字(1-10)是对每条语句的编号。 a 画出程序的控制流图(用题中给出的语句编号表示)。 b分别用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。
实验二、 为三角形程序设计测试用例。这个程序的功能是,读入代表三角形边长的三个整数,判断它们能否组成三角形。如果能够,则输出三角形是等 2
边、等腰或任意三角形的识别信息。(2学时) (1) 实验目的:通过实验主要掌握黑盒法和白盒法设计测试用例的技术。 (2)实验内容:为以下的三角形程序设计一组测试用例。这个程序的功能是,读入代表三角形边长的3个整数, 判断他们能否组成三角形。如果能够组成,则输出三角形是等边,等腰或任意三角形的识别信息。 (3)实验要求:先用黑盒法设计测试用例,然后用白盒法进行检验与补充。用某种高级语言 写出程序代码,然后将选好的测试用例输入,给出打印输出结果。该程序的流程图和流 图如下:
开始
ABCA=BB=CA=CB=C印出不是三角形印出等边三角形印出等腰三角形印出不等边三角形
停止
TFFFFFFFT
TTTTT
图2.1程序流程图 3
S12119
108E765324
1ade
cb
wsrpgmhgfkjinlt
图2.2 流图 4
实验三、 使用LoadRunner 对Web软件进行负载/压力测试(4学时) ① 实验目的:通过本实验掌握LoadRunner测试工具的使用,对Website应用中至关重要的负载/压力进行测试分析。 ② 实验内容:通过LoadRunner提供的功能对Website的并发用户数,事务平均响应时间,网络吞吐量以及带宽等性能进行测试。 ③ 实验要求:自己编写开发测试脚本,创建运行场景,分析测试结果并找出错误位置和原因,写出测试结果报告。
附录:loadRunner使用说明(本说明针对LoadRunner7.51 Release) LoadRunner 包含很多组件,其中最常用的有 Visual User Generator(以下简称VuGen)、Controller,Analysis。使用 LoadRunner 进行测试的过程可以用图3.1表示
图3.1 LoadRunner测试步骤 下面我们就按照上图的步骤来简单说明使用 LoadRunner 的测试过程。
1 制定负载测试计划 在任何类型的测试中,测试计划都是必要的步骤。测试计划是进行成功的负载测试的关键。任何类型的测试的第一步都是制定比较详细的测试计划。一个比较好的测试计划能够保证LoadRunner 能够完成负载测试的目标。 制定负载测试计划一般情况下需要三个步骤,可以用图3.2表示 5
3.2 制定负载测试计划步骤 下面简单的对这三个过程进行介绍。 1.1 分析应用程序(Analyze the Application) 制定负载测试计划的第一步是分析应用程序。你应该对系统的软硬件以及配置情况非常的熟悉,这样才能保证你使用LoadRunner 创建的测试环境真实的反映实际运行的环境。 确定系统的组成 画出系统的组成图。组成图要包括系统中所有的组件,以及相互之间是如何通讯的。 图3.3是一个系统组成图的例子,可以参考。
图3.3 网络系统组成图 描述系统配置 画出系统组成图后,试着回答以下问题,对组成图进行完善。 预计有多少用户会连到系统 客户机的配置情况(硬件、内存、操作系统、软件工具等) 服务器使用什么类型的数据库以及服务器的配置情况 客户机和服务器之间如何通讯 还有什么组件会影响 Response Time 指标(比如Modem 等) 通讯装置(网卡、路由器等)的吞吐量是多少?每个通讯装置能够处理多少并发用户 分析最普遍的使用方法 了解该系统最常用的功能,确定那些功能需要优先测试、什么角色使用该系统以及 每个角色会有多少人、每个角色的地理分布情况等,从而预测负载的最高峰出现的情况。 1.2 确定测试目标(Defining Testing Objectives) 这里通过表3.1来说明如何确定测试目标。 6
表 3.1 确定测试目标所需考虑的对象 在这里还要确定何时开始负载测试,在不同的阶段进行什么内容的负载测试。可以用表3.2来说明。 表3.2 不同阶段所需的负载测试内容
1.3 计划怎样执行LoadRunner 确定要使用 LoadRunner 度量那些性能参数,根据测量结果计算那些参数,从而可以确定Vusers(虚拟用户)的活动,最终可以确定那些是系统的瓶颈等。 在这里还要选择测试环境,测试机器的配置情况等等。 2 开发测试脚本 LoadRunner 使用虚拟用户的活动来模拟真实用户来操作Web 应用程序,而虚拟用户的活动就包含在测试脚本中,所以说测试脚本对于测试来说是非常重要的。 开发测试脚本要使用 VuGen 组件。测试脚本要完成的内容有: 每一个虚拟用户的活动 定义结合点 定义事务 开发测试脚本需要几个步骤,可以用图3.4来表示 7
图3.4 开发测试脚本步骤 创建用户脚本需要用到 VuGen。提示:运行VuGen 最好在1024*768 的分辨率下,否则有些工具栏会看不到。 2.1 录制基本的用户脚本 启动Visual User Generator后,通过菜单
新建一个用户脚本,选择系统通讯的协议。 8 这里我们需要测试的是 Web 应用,所以我们需要选择Web(HTTP/HTML)协议,确定后,进入主窗
体。
通过菜单 9
来启动录制脚本的命令。 在 URL 中添入要测试的Web 站点地址,这里我们以著名的Duwamish 应用为例子来进行录制。 选择要把录制的脚本放到哪一个部分,默认情况下是“Action1”。
这里简单说明一下:VuGen 中的脚本分为三部分:vuser_init、vuser_end 和Action。其中vuser_init 和vuser_end 都只能存在一个,不能再分割,而Action 还可以分成无数多个部分(通过点击New 按钮,新建ActionXXX)。 在录制需要登陆的系统时,我们把登陆部分放到vuser_init 中,把登陆后的操作部分放到Action 中,把注销关闭登陆部分放到vuser_end 中。(如果需要在登陆操作设集合点,那么登陆操作也要放到Action 中,因为vuser_init 中不能添加集合点)在其他情况下,我们只要把操作部分放到Action 中即可。 注意:在重复执行测试脚本时,vuser_init 和vuser_end 中的内容只会执行一次,重复执行的只是Action 中的部分。 “Record the application startup”默认情况下是选中的,说明应用程序一旦启动,VuGen 就会开始录制脚本;如果没有选中,应用程序启动后,VuGen 出现以下对话框,并且暂时不会开始录制脚本,用户操作应用程序到需要录制的地方,按下“Record”按钮,VuGen 才开始录制。
点 “ Options ” 按钮,进入录制的设置窗体, 这里一般情况下不需要改动。 10
Recording标签页:默认情况下选择“HTML-based Script”,说明脚本中采用 HTML 页面的形式来表示,这种方式的Script 脚本容易维护,容易理解,推荐这种方式录制(微软在ACT 中附带的Duwamish7 例子采用的就是这种方式)。 “URL-based Script”说明脚本中的表示采用基于URL 的方式,WAS 和ACT中的录制方式就是这种,这种方式看上去比较乱。 选择哪种方式录制,有以下参考原则: 1 基于浏览器的应用程序推荐使用HTML-based Script 2 不是基于浏览器的应用程序推荐使用 URL-based Script。 3 如果基于浏览器的应用程序中包含了 JavaScript 并且该脚本向服务器产生了请求,比如DataGrid 的分页按钮等,也要使用URL-based 方式录制 4 基于浏览器的应用程序中使用了 HTTPS 安全协议,使用URL-based 方式录制 Advanced 标签页:取默认情况即可。下面的图简单的说明了各项的含义。 Correlation 标签页:这里的内容比较重要,需要定制,主要是为了在录制过程 中设置自动关联。 根据自己的需求,选择适当的设置,然后点“OK”后,VuGen 开始录制脚本。 在录制过程中,不要使用浏览器的“后退”功能,LoadRunner 支持不太好!