1、1毕 业 论 文论文题目:论述如何提高软件质量2内 容 摘 要通过测试活动提高软件产品的质量是测试人员的重要任务之一。在有限的软件测试时间和资源的情况下,及时的交付高质量的软件产品交给客户,是测试人员的主要目标之一。那么,什么样的软件产品可以成为高质量的?测试人员在测试过程中,执行的测试用例完全覆盖了需求规格说明中的需求条目,是不是就可以认为测试对象的质量满足了要求?为了更好的回答这个问题,测试人员有必要首先了解一下从功能测试与性能性角度论述如何提高软件质量:功能性测试是保障软件质量的最小单元,是保证与需求一直的重要屏障,而功能性测试是测试工程师按照需求或需求规格说明书展开的测试工作。而性能测
2、试在传统的测试中,往往是放在质性测试的最后阶段。性能测试不是测试工作中独立的工作模块。其应用于功能性测试结合开展。关键模块是功能性测试的重要模块,往往也是性能测试的重要点。关键字:功能测试 性能测试 软件质量3AbstractImprove the quality of software products through the testing activities is one of the important task of testing personnel. In software testing time and resource limited circumstances, tim
3、ely delivery of high quality software products to customers, is one of the main objectives of testing personnel. So, what kind of software products can become the high quality? The tester in the testing process, test case execution completely covers the requirements specification requirements in the
4、 entry, is it right? You can think the test object quality meets the requirements?In order to answer this question, it is necessary to know the test personnel on how to improve software quality from the function test and performance point of view: functional testing is the smallest unit of software
5、quality assurance, is an important barrier and demand has been, and functional testing is a test engineer according to the needs or requirements specifications expansion. The performance test in the traditional test, often is the last stage in the qualitative test. The work module independent of the
6、 performance test is not the test work. Its application in functional test based on. The key module is important functional testing, the important point is often the performance test.Keywords: functional testing performance testing software quality 4目 录1 功能测试 -11.1 功能测试定义 -11.2 功能测试概况 -11.3 功能测试一般进行
7、 -12 性能测试 -22.1 性能测试定义 -22.2 性能测试概况及一般进行步骤 -22.3 性能测试的日报 -33 测试类型的比较 -33.1 功能测试、界面测试、接口测试的比较 -33.2 性能测试、强度测试、余量测试、容量测试的比较 -34 软件质量 -44.1 软件质量的定义 -44.2 软件质量范围 -44.3 软件质量标准 -54.4 测试计划的编写 -5注释 -6参考文献 -7致 谢 -851 功能测试1.1 功能测试定义图 1.1 功能测试功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。功能测试也叫黑盒测试黑盒测试(Black
8、-box Testing,又称为功能测试或数据驱动测试)是把测试对象看作一个黑盒子 1。功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。比如黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。黑盒测试注重于测试软件的功能性需求,也即黑盒测试使软件工程师派生出执行程序所有功能需求的输入条件 2。黑盒测试并不是白盒测试的替代品,而是用于辅助白盒测试发现其他类型的错误。黑盒测试试图发现以下类型的错误: 功能错误或遗漏; 界面错误;
9、数据结构或外部数据库访问错误; 性能错误; 初始化和终止错误。1.2 功能测试概况功能测试时最基本的测试,同时也是最重要的测试;在进行功能测试时,受限需要对软件需求规格等依据文档进行分析;首先要明确功能测试的正常等价类 。同时在用例设计中遗漏了正常等价类;依据输入数据的属性展开想象,设计非正常的功能测试用例,并且注意预期结果;设计测试用例时,一方面分析输入数据,另一方面别忘了分析草组流程。功能测试也成为行为测试,根据产品特性、操作描述和用户方案,测试一个产品的6特性和可操作行为以确定它们满足设计需求。本地化软件的功能测试,用于验证应用程序,应用程序是专门为该市场开发的一样。 3功能测试是为了确
10、保程序以期望的方式运行而按功能要求对软件进行的测试,通过对一个系统的所有的特性和功能都进行测试确保符合需求和规范。功能测试也叫黑盒子测试或数据驱动测试,只需考虑各个功能,不需要考虑整个软件的内容结构及代码,一般从软件产品的界面,架构出发,按照需求编写出来的测试用例,输入数据在预期结果和实际结果之间进行评测,进而提出更加使产品达到用户使用的要求 4。功能测试的测试工具:quicktest.QuickTest Professional 简称 QTP,是一种自动测试工具。使用 QTP 的目的是想用它来执行重复的手动测试,主要是用于回归测试和测试同一软件的新版本。因此你在测试前要考虑好如何对应用程序进
11、行测试,例如要测试那些功能、操作步骤、输入数据和期望的输出数据等。这是一种针对功能测试和回归测试自动化提供业界最佳的解决方案 - 适用于所有主要软件应用程序和环境,也可以说成是关键字驱动测试方法1.3 功能测试一般进行用正常值的等价类输入数据值测试;用非正常的等价类输入数据值测试;运行每个功能的合法边界和非法边界输入的测试;用一系列真实的数据类型和数据值运行,测试超负荷、饱和及其他“最坏情况”的结果;在配置项测试时对配置项控制流程的正确性、合理性等进行验证;利用QTP录制脚本,快速准确的检测出用例的正确性。图1.3 QTP工作原理72 性能测试2.1 性能测试定义性能测试是通过自动化的测试工具
12、模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况 5。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常伏在条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或
13、者不能接收的性能点,来获得系统能提供的最大服务级别的测试。性能测试是对软件需求规格说明中的性能需求选项进行测试,以验证其性能是否满足需求。2.2 性能测试概况及一般进行步骤性 能 测 试 在 软 件 的 质 量 保 证 中 起 着 重 要 的 作 用 , 它 包 括 的 测 试 内 容 丰 富 多 样 。中 国 软 件 评 测 中 心 将 性 能 测 试 概 括 为 三 个 方 面 : 应 用 在 客 户 端 性 能 的 测 试 、 应 用 在网 络 上 性 能 的 测 试 和 应 用 在 服 务 器 端 性 能 的 测 试 。 通 常 情 况 下 , 三 方 面 有 效 、 合 理 的结 合
14、 , 可 以 达 到 对 系 统 性 能 全 面 的 分 析 和 瓶 颈 的 预 测 。性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常伏在条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况 6。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。性能测试是对软件需求规格说明中的性能需求选项进行测试,以验证其性能是否满足需求性能测试经常与余量测试、强度测试、容量测试在一起;基本的性能度量应当首先以没有争议的方式
15、上在主要的功能上被执行;其次在系统处于竞争模式下进行,及在一中苛刻的环境中衡量资源的使用常常是必要的;数据采集功能的测试; 数据融合功能的测试;测试在获得定量结果是程序计算的精确性;测试器时间特征和实际完成功能的时间即响应时间;测试为完成功能所处理的数据量并准确的记录下来。测试程序运行所占用的空间;测试器负荷潜力;测试配置项各部分的协调性;8在系统测试时测试团建的性能和应将性能的集成;在显然测试时测试系统对并发事物和并发用户访问的处理能力;2.3 性能测试的日报 熟悉系统测试的测试用例的开发、测试计划、方案的写作。 了解需求规格说明书、测试计划书和详细计划说明书。 正确说明测试的项目名称及描述
16、、所用时间,在某系统下测试,提交缺陷报告、测试用例。项目名称:航空售票系统flight。项目描述:flight是一个飞机票订票系统,是基于windows的B/S程序,使用SQL SERVER2000。数据库具有订票、修改订单、查询、退票、航班信息管理等功能。3 测试类型的比较3.1 功能测试、界面测试、接口测试的比较 功能测试验证功能是否满足要求; 界面测试主要是用户界面的友好性,是否满足用户的要求; 接口测试主要关注是接口;注:接口测试:接口测试是对软件需求规格中的接口需求逐项进行的测试。3.2 性能测试、强度测试、余量测试、容量测试的比较 性能测试需要在测试过程中测试出实际的性能要求,并与
17、预期的性能值进行比较; 强度测试在测试中需要超出要求值,使软件运行到不稳定状态或故障状态 7; 余量测试需要测试是否留有20%要求; 容量测试检验测软件的能力最高能达到什么程度的测试;性能测试有软件需求中有明确的数值,而强度测试盒容量测试没有明确的数值,需要通过测试来寻找该数值;在测试结果方面,性能测试需要与性能要求进行比较,而强度测试盒容量测试只需提高容量值就可以了;注:余量测试:余量测试是对软件是否达到需求规格说明中要求的余量的测试。若无明确要求时一般至少留有20%的余量 8。强度测试:强度测试是强制软件运行在不正常到发生故障的情况下,检测软件可以运行达到何种情况的测试。容量测试:容量测试
18、是检验软件的能力提高能达到什么程度的测试。94 软件质量软件测试可以再开发过程中发现大部分的软件缺陷,但是,单靠软件测试是不能保证软件质量的,尤其是在软件测试的时间没有办法充分保证、测试资源无法有效提供的情况下,测试人员只能尽量在允许的时间范围内发现尽可能多的问题。除了软件测试,,还应该通过软件配置管理、进度控制等项目管理手段来确保软件研发的税率、有序开展,结合软件需求控制、需求分析、设计评审、代码审查等多种形式来保证软件质量。4.1 软件质量的定义质量是相投、部件或过程满足客户或用户需要的程度。软件质量是软件负荷明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具
19、有的隐含特征的程度。4.2 软件质量范围 可说明性:用户可以基于产品或服务的描述和定义进行使用。 有效性:产品或服务对于99.999%客户总是有效的。 易用性:对于用户,产品或服务非常容易使用并且一定是非常有用的功能。注:会用-有用-好用那如果让大家去判断某个软件的质量,大家是不是已经有了一点头绪了,但是大家会发现感觉还是很迷茫,就像评价学生咱们知道从课堂、作业、实验三部分评价一样,但是没有具体衡量指标,所以为了更好的来判断一个软件的质量咱们给大家介绍软件质量的衡量标准 10。可用/会用:让用户能使用。 有用:产品对于用户来讲,能有所帮助。 4.3 软件质量标准软件质量标准:产品生产、检验和评
20、定质量的技术依据。产品质量特性一般以定量表示,例如强度、硬度、化学成分等;对于难以直接定量表示的,如舒适、灵敏、操作方便等,则通过产品和零部件的试验研究,确定若干技术参数,以间接定量反映产品质量特性。对企业来说,为了使生产经营能够有条不紊地进行,则从原材料进厂,一直到产品销售等各个环节,都必须有相应标准作保证。它不但包括各种技术标准,而且还包括管理标准以确保各项活动的协调进行。 4.4 测试计划的编写文档目的、项目背景介绍、术语及缩略语、数据的输入描述性能测试流程、范围、10环境、风险等因素作为性能测试实施依据。 测试准备:测试环境的准备、测试内容、非测试内容 角色和职责、测试工具的安装、测试进度的安排 测试数据准备 系统数据量、测试用户、出口标准、风险分析 测试过程及步骤 测试方案的安排 测试结果:测试完成后,记录测试结果,将其提供给用户 Loadrunner结果: Windows 资源使用情况、对应的用户数量、测试结果、数据库结果、应用服务器结果 10测试结论:明确当前系统可以支持的并发用户数量达到X个