可以说,谁掌握了功能测试和性能测试的精髓,谁就能在测试外包市场中占据技术制高点。本文正是为这类软件服务型企业出谋划策、提供测试技术决策参考。
虽然功能测试是绝大多数软件都无法回避的,但多数开发企业不谙其中滋味,所以,测试外包市场才会如此繁荣而且规模日益壮大。目前,功能测试已跨越了单靠手工敲敲键盘、点点鼠标就可以完成的阶段,正朝着自动化和智能化方向发展。自动化是指各类测试工具已经得到日益广泛的应用; 智能化是指测试人员从脚本编制、运行、调试到结果分析乃至测试方案改进,都需要有深入的了解。
而性能测试的重要性是随着网络应用的发展而发展的,由于网络环境、数据库环境、应用服务器环境、系统平台和技术等的复杂性和多样性,软件性能非常难于控制。虽然,改善系统性能不是单单依靠性能测试就能完成的,但性能测试至今仍是控制性能的非常有效的手段,在软件的能力验证、能力规划、性能调优、缺陷修复等方面都发挥着重要作用。
功能测试工具的选择
那么,如何高效地完成功能测试?选择一款合适的功能测试工具并培训一支高素质的工具使用队伍无疑是至关重要的。尽管现阶段存在少数不采用任何功能测试工具,从事功能测试外包项目的软件服务企业。短期来看,这类企业盈利状况尚可,但长久来看,它们极有可能被自动化程度较高的软件服务企业取代。
目前,用于功能测试的工具软件有很多,针对不同架构软件的工具也不断推陈出新。这里重点介绍的是其中一个较为典型自动化测试工具,即Mercury公司的WinRunner.
WinRunner是一种用于检验应用程序能否如期运行的企业级软件功能测试工具。通过自动捕获、检测和模拟用户交互操作,WinRunner能识别出绝大多数软件功能缺陷,从而确
保那些跨越了多个功能点和数据库的应用程序在发布时尽量不出现功能性故障。
WinRunner的特点在于: 与传统的手工测试相比,它能快速、批量地完成功能点测试; 能针对相同测试脚本,执行相同的动作,从而消除人工测试所带来的理解上的误差;
此外,它还能重复执行相同动作,测试工作中最枯燥的部分可交由机器完成; 它支持程序风格的测试脚本,一个高素质的测试工程师能借助它完成流程极为复杂的测试,通过使用
通配符、宏、条件语句、循环语句等,还能较好地完成测试脚本的重用; 它针对于大多数编程语言和Windows技术,提供了较好的集成、支持环境,这对基于Windows平台的应用程
序实施功能测试而言带来了极大的便利。
WinRunner的工作流程大致可以分为以下六个步骤:
1.识别应用程序的GUI
在WinRunner中,我们可以使用GUI Spy来识别各种GUI对象,识别后,WinRunner会将其存储到GUI Map File中。它提供两种GUI Map File模式: Global GUI Map File和GUI Map File per Test.其最大区别是后者对每个测试脚本产生一个GUI文件,它能自动建立、存储、加载,推荐初学者选用这种模式。但是,这种模式不易于描述对象的改变,其效率比较低,因此对于一个有经验的测试人员来说前者不失为一种更好的选择,它只产生一个共享的GUI文件,这使得测试脚本更容易维护,且效率更高。
2.建立测试脚本
在建立测试脚本时,一般先进行录制,然后在录制形成的脚本中手工加入需要的TSL(与C语言类似的测试脚本语言)。录制脚本有两种模式: Context Sensitive和Analog,选择依据主要在于是否对鼠标轨迹进行模拟,在需要回放时一般选用Analog.在录制过程中这两种模式可以通过F2键相互切换。
只要看看现代软件的规模和功能点数就可以明白,功能测试早已跨越了单靠手工敲敲键盘、点点鼠标就可以完成的阶段。而性能测试则是控制系统性能的有效手段,在软件的
能力验证、能力规划、性能调优、缺陷修复等方面都发挥着重要作用。
分享到:
相关推荐
软件软件功能和性能测试经验谈软件测试可以说,谁掌握了功能测试和性能测试的精髓,谁就能在测试外包市场中占据技术制高点。本文正是为这类软件服务型企业出谋划策、提供测试技术决策参考。虽然功能测试是绝大多数...
Web测试是软件测试的重要组成部分,主要针对Web应用程序的各个层面进行验证,确保其功能、性能、安全性以及用户体验等方面满足预期。以下是对Web测试多种类型的详细说明: 1. 页面链接检查:这是确保网站导航功能...
《侯捷畅谈源码追踪经验谈》是Java领域的经典之作,由知名IT专家侯捷撰写,该书深入探讨了源码分析与调试的技术和策略。全书分为上下两册,旨在帮助开发者提升对代码的理解能力和问题排查能力,从而更好地驾驭复杂的...
### 软件测试经验谈 #### 引言 随着软件产业的发展,软件测试作为确保产品质量的关键环节,其重要性日益凸显。对于刚踏入这一领域的新人来说,掌握正确的测试方法和积累实践经验至关重要。本文旨在为软件测试新手...
本文将基于《软件测试及Bug管理经验谈》这一主题,深入探讨软件测试的核心原则、Bug管理的重要性和有效实践,以及如何选择适合的Bug管理工具。 #### 清晰的质量概念 软件测试的第一步在于确立明确的质量标准。这...
1. **质量标准**:清晰的质量标准是测试的基础,包括但不限于安装卸载流程、功能性能、用户界面、错误处理和恢复机制等。建立一个大纲式的CheckList有助于确保全面覆盖测试点。 2. **测试计划**:根据CheckList制定...
本文将深入探讨编程经验中的关键点,结合“程序设计经验谈”这一主题,帮助读者更好地理解和应用编程技巧。 1. **代码可读性**:一个优秀的程序员始终注重代码的可读性,因为代码是给人读的,而不是机器。清晰的...
这篇“fpga经验谈”来自西安大唐电信,可能涵盖了关于FPGA设计、开发、应用及优化的各种实践经验和心得,对于想要深入理解和掌握FPGA技术的工程师来说,是一份非常有价值的参考资料。 1. FPGA基础知识: FPGA由可...
OpenCV提供强大的图像处理功能,而深度学习框架如TensorFlow和PyTorch则用于构建和训练复杂的神经网络模型。 提到的"pixel-anchor-link"算法是一种基于深度学习的方法,它结合了像素级锚点(Pixel Anchor)和链接...
### Arduino项目开发经验谈 Arduino作为一种流行的开源电子原型平台,被广泛应用于教学、产品原型设计以及各种创意项目中。本文将根据所提供的标题、描述、标签及部分内容,详细解析与Arduino项目开发相关的知识点...
在“ARM嵌入式软件编程经验谈”这个主题中,我们主要探讨的是在ARM架构下进行嵌入式软件开发的一些关键技术和实践经验。ARM处理器因其高效能、低功耗的特性,在嵌入式系统中广泛应用,从物联网设备到移动设备再到...
总的来说,《程序员入门与游戏编程经验谈》是一本全面介绍游戏开发的书籍,它将带领读者从游戏的历史到实际编程技巧,再到项目管理和设计原则,逐步深入这个充满魅力的领域。对于有志于成为游戏开发者的人来说,这...
本主题主要围绕"PowerBuilder编程经验谈"展开,旨在分享关于PowerBuilder的编程技巧和实践经验。 1. **PowerBuilder简介**:PowerBuilder是由Sybase公司(现被SAP收购)开发的一款可视化的面向对象的集成开发环境...