《从功能性与性能性角度论述如何提高软件质量-学位论文》由会员分享,可在线阅读,更多相关《从功能性与性能性角度论述如何提高软件质量-学位论文(18页珍藏版)》请在金锄头文库上搜索。
1、毕 业 论 文 论文题目:从功能性与性能性角度论述如何提高软件质量 摘 要软件功能性测试是软件质量保证的关键技术,在软件生命周期中占有重要的位置。理论上软件本身的缺陷都可在功能性测试阶段被暴露,因此软件功能性测试方法是提高软件可靠性及软件质量最有效、最直接的方法之一。 本文对软件功能测试的概念以及主要的实现方法进行了研究。以具体的软件项目结合功能测试方法,分析了针对几种不同软件项目模型下的软件功能测试策略、功能测试的测试流程、测试点的分解及覆盖方法、测试用例的设计方法及建立测试用例集的方法等。随着当前软件开发技术的发展与成熟,越来越多复杂的软件系统应用于人们生活的各个领域,软件系统运行时的性能
2、表现已经成为衡量软件产品质量的一个重要标准。研究了软件系统性能测试的整体的流程,并结合自动化测试工具LoadRunner,对软件性能测试的相关信息进行了分析。关键词 功能性测试,测试流程,性能测试,测试工具Abstract Software functional testing is the key technology of software quality assurance, occupies an important position in the software life cycle. Theoretical defects of the software itself may b
3、e exposed at functional testing phase, software functional testing methods are improved software reliability and software quality in one of the most effective and direct way to. This essay probes into both the concept of software functionality testing and the main method of realizing it deeply. Comb
4、ining specific software project and functionality testing method together, it makes an analysis of the strategies and process of functionality testing, the decomposition and covering method of test point, the design method of test cases and the method to tablish collection of test cases, etcfor seve
5、ral different software project model.As when Kwame software development technology develops and matures, more and more complex software system used in all areas of peoples lives, software, system runtime performance has become an important standard for measuring software product quality. Examined th
6、e overall process of software system performance testing, combined with automated testing tools LoadRunner, software performance testing conducted an analysis of related information.Key words: function testing,Test procedure, performance,testing tools目 录1 绪论11.1课题背景11.2研究意义11.3国内外发展的现状21.4 研究内容22 功能
7、性测试基本理论22.1 软件功能测试的定义22.2 功能测试在测试阶段中得定位32.3 软件性能的指标32.4 基于软件模型的功能测试策略32.4.1 原型模型32.4.2 V模型42.4.3 PTGM测试过程模型43. 功能性测试方法53.1 功能性测试流程53.1.1 测试需求分析53.1.2 功能点分解63.1.3 建立测试用例63.1.4 测试执行63.1.5 BUG管理63.2 测试用例设计方法63.2.1等价类划分法63.2.2 边界值分析法74. 性能性测试84.1 软件性能测试的目标84.1.1 发现缺陷84.1.2性能调优84.1.3 能力检验与规划84.2性能分析84.2.
8、1 性能下降曲线的分析84.2.2 性能计数器的分析94.3性能测试报告和分析94.4 软件性能测试工具LoadRunner95. 总结10注释11参考文献12致谢131 绪论软件质量是软件产品或服务的特征或特征的整体,它取决于满足给定需求的能力。我国1996 年公布的“计算机软件工程规范国家标准汇编”中关于软件质量的定义如下:(1)软件产品满足给定需求的特征及特征的总体能力; (2)软件拥有所期望的各种属性组合的程度;(3)顾客或用户认为软件满足他们综合期望的程度;(4)软件组合特性在使用中,将满足用户预期需求的程度。软件功能性是为了发现软件功能错误而执行程序的过程,因此软件功能性测试目的就
9、是尽可能多地发现并改正软件中的功能错误,以提高软件质量。软件性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。1.1课题背景随着人类社会的进步,各种领域应用计算机技术的普及,全球的信息化已经有了长足深入的发展,作为计算机“灵魂”的各种软件系统,时时刻刻的出现在各个场合,为人们的办公、生活、学习、休闲等提供了前所未有的方便。当一个软件由雏形前进到真正在一台计算机上运行的时候,没有人能够保证制作出的软件能够一步到位的满足客户或使用者的需求,以及良好的使用体验,因此软件生产周期中需要一个环节来检验并保证软件具备了人们期望的功能与运行的稳定,并且确认这些功
10、能以正确的方式完成了人们期望的工作。因此为了满足这样的要求,应运而生了软件功能性测试技术与软件性能性测试技术1。1.2研究意义软件功能性测试是一种以用户视角进行的验证软件是否满足预期需求、是否具备预期功能、功能是否正确执行的测试方法。在实际情况中软件功能复杂而多样,如何保证所有功能都被加以检测,理论上只有采取穷举输入法,把所有可能2的输入都作为测试情况进行考虑,才能查出程序中的所有错误 。但实际上将软件所有功能点及所有的输入进行穷举验证是不现实的,所以我们需要进行有针对性的测试,通过制定测试方案指导测试的进行,保证软件有组织、按步骤、有计划的进行测试。因此功能测试行为必须能够加以量化,才能真正
11、保证软件功能的质量。软件性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。研究软件功能性与性能性测试方法即是研究如何分解软件中的功能点,建立测试用例来将测试量化的办法 。作为一名计算机专业的学生,掌握软件功能性测试的方法与技术,对提高自己的专业技术水平,丰富软件工程知识,以及为今后参加工作打下基础都是具有理
12、论价值和实际意义的工作。1.3国内外发展的现状为推进和协调软件测试的研究工作,1999 年在美国洛杉矶召开的第 21 届国 际软件工程会议上,软件测试及其过程作为技术专题开展了讨论。近年来,国外 在软件测试过程方面的理论和技术上均有了很大的发展,形成了一套较为完善的 3软件测试过程技术和管理理论体系,测试方法与手段日趋成熟和多样化。软件测试在我国起步较晚,但在软件测试管理、软件测试技术以及软件测试 工程方法上取得了一些研究成果。例如,中国科学院计算技术研究所进行的软件 测试方法研究,华中科技大学计算机学院基于并行工程的软件测试模型研究,上海计算机软件技术开发中心进行的软件测试管理研究等。研究表
13、明,软件测试的4过程必须在软件投入生产运行之前尽早开始,提高软件质量。然而,无论是传统还是最新的软件测试理论和技术,在软件测试管理、测试过程的理解和实施方法上仍然存在着局限性,因此,在实施测试过程改进的工作中,不能直接照搬他人的成功经验,要结合所在组织和具体项目研究适用有的 改进方法。在国内大部分软件开发组织依然存在“重开发,轻测试”的现象,对于软件功能与性能质量的控制并不重视,但一些电信通讯或软件外包公司等高端领域的开发企业已经开始意识到软件测试对保证和提升软件质量与软件运行稳定性的重要性,并逐步加大了对产品 测试的力度及相关测试方法的学习和研究。1.4 研究内容本课题通过对软件功能性测试的
14、概念和方法的研究,分析了软件功能性测试中功能测试流程、测试用例建立规则及测试性能的建立方法。并对实际应用软件进行功能性测试与性能性测试。1. 介绍课题来源、研究背景、国内外研究现状以及论文的目标与主要内容。2. 介绍相关的软件测试基本理论,分析针对几种不同软件项目模型下的功能测试策略。3. 介绍软件功能性测试概念、功能性测试方法。4. 介绍软件行能性测试概念、性能性测试方法、软件性能测试工具LoadRunner。5. 对功能测试与性能测试方法进行总结,并结合在实习单位测试功能中总结经验教训2 功能性测试基本理论2.1 软件功能测试的定义早期的测试理论通常使用黑盒测试的概念定义功能性测试,但经过
15、测试技术的不断发展,仅以功能性测试作为黑盒测试的全部过程已经不能满足软件质量的要求,因此功能性测试的内容被更加细化,目标及其定义也变得更加明确。恰当的功能性测试被定义为:根据软件产品的特征、操作、描述和用户方案对软件系统特性和可操作行为进行测试,以确定它们满足需求中预期功能性的行为 称为软件的功能性测试。5 功能测试通常在已知软件应当具有哪些功能后,以用户角度来进行程序功能的使用,参照需求分析和规格说明书作为评定标准,以确保软件中各个可以功能满足用户需求,并且功能可以有效运行。2.2 功能测试在测试阶段中得定位一般来讲,对软件产品进行的测试统称为软件测试,软件测试大致可分为单元测试、集成测试、功能测试、性能测试、兼容性测试、可靠性测试、验收测试6等7个阶段,软件的功能性测试属于软件测试中黑盒测试的一部分。 软件的功能性测试是在单元测试与集成测试完成后进行的一项检验软件功能是否符合预期要求及功能正确性的测试过程7。2.3