一个软件测试工程师的成长日记(连载一)

发表于:2013-4-28 11:17

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:《从菜鸟到测试架构师    来源:51Testing软件测试网采编

  功能测试通过后,性能测试就随之开始了。性能测试是重点验证软件的非功能性需求的测试。企业级软件通常用于应对复杂苛刻的用户场景。在软件设计和安装的过程中,有许多细节能提供软件的性能,包括吞吐率、稳定性、可靠性等。性能测试通过自动化的方法模拟真实用户并发访问的场景,以验证系统的性能指标或发现其性能瓶颈。性能缺陷常常不是显而易见的,有时候得通过复杂的场景模拟方可重现问题。由于性能问题的复杂性,要定位问题的原因也是一个艺术的过程。通过了性能测试的软件系统从根本上保证了用户体验和长远利益。

  正式版本发布前,测试组还要组织成品测试(GMV),测试软件的安装、部署、发布等情况,确保软件能最终顺利地安装到用户的环境中。通过集成测试后,软件的质量有了进一步的保障。

  软件正式版本发布以后,根据用户的反馈,产品组需要发布多个小版本。发布以前,当然也要有针对性地测试小版本的功能、性能,以及和正式版本的兼容性。小版本的开发和测试周期比正式版本短得多,因此对测试团队的项目管理要求更高。

  “在IBM,为了保证软件质量而进行的测试是全面而苛刻的。”凯文说,“等你完成了新员工培训并开始接触项目时,你将有更多机会从方法到实践了解我们的软件测试。”

  1.1.2  苦练基本功(1)

  小艾所在开发团队所负责的产品是电子商务平台。电子商务平台是一个功能强大的企业级应用,它支持多种计算机平台。要成为一名合格的测试工程师,首要的就是熟练掌握基本功。所谓基本功,指的是作为任何开发团队的一员,都应该掌握的基本知识和技能。

  小艾发现上大学时学习的专业课还是非常有用的,诸如数据结构与程序设计、计算机组成原理、操作系统原理等。但这些课程大多只注重理论,缺少在真实环境中实践的经验。公司的软件开发通常都有比较成熟的基础设施,对于新人来说,了解开发平台和方式也是锻炼基本功的一部分。

  操作系统是平台的基础。IBM的产品通常都支持多种流行的操作系统,如Windows,UNIX,Linux等;为了满足更大规模的应用,产品还能提供对大型机的支持。小艾最熟悉的操作系统是Windows,在学校和日常生活中基本都用这个系统,而对UNIX和Linux却是一知半解。在开发组的数据库里,小艾学习了大量关于UNIX/Linux基础的材料。在学习的过程中,他有机会操作各种平台的机器,这样在实践中学习效果是最好的。几周下来,小艾已经掌握了UNIX/Linux的系统管理知识和编程基础。他发现,在简洁的黑色文本界面背后,隐藏着超乎想象的强大计算能力。

  学习了操作系统基本知识后,小艾满怀兴奋地找凯文:“我是不是可以开始测试产品了?”凯文摇头说:“离测试还远着呢!不过你可以接着实践测试环境搭建了。”所谓测试环境搭建,是指在操作系统基础上,安装测试需要的应用程序,并部署测试的功能代码,准备测试数据,建立起一个可供测试的环境。电子商务系统是基于中间件的网络应用程序,因此,必须从安装服务器程序开始。一个完整的企业级网络应用程序,通常需要集成多个服务器,包括网络服务器、应用服务器、数据库服务器等。坐在机器前,小艾发现搭建测试环境是一个艰巨的过程。

  测试环境的搭建从安装网络服务器开始,接着是数据库服务器和应用服务器的安装。网络应用程序作为企业级应用,部署在应用服务器上。面对一系列的设置步骤,小艾感到头晕目眩。一连几天,小艾都在直接和服务器打交道。在UNIX/Linux上搭建测试环境,用户的权限管理是关键的部分。因为涉及许多手动操作的部分,一时疏忽引起的用户权限错误会导致搭建失败。小艾自问还是很有耐心的,这次也被测试环境安装折腾得“体无完肤”。经过凯文的多次“指点迷津”,在安装配置好服务器以后,电子商务应用程序也安装好了。

  小技巧:正确的流程和步骤一定要及时记录。有了流程和步骤的指引,可以避免大量不必要的重复劳动。

  这也仅仅相当于一个新建的购物商城做好了“硬装修”,商城还是空空的,还不足以接受业务流程。根据测试用例的要求,需要安装并激活业务模块。网上商城的经营模式、页面的样式、能够提供的功能等特性,都是通过激活业务模块并配置数据等步骤决定的。

  激活了业务模块以后,工程师的测试才可以开始。

  领教了测试环境安装的烦琐步骤,小艾想,要是测试工程师不得不耗费大量资源兼顾测试环境的安装和配置,那么将难以保障软件测试的质量。从资源利用优化的角度而言,这似乎也不是很好的方式。

  带着疑惑,小艾找到了凯文,“环境安装耗时费劲,测试人员必须每次都从头到尾安装测试环境吗?”

  凯文说:“看来你对环境安装的难度有了很深的体会啊。你的顾虑项目组很早以前已经考虑到了。我们发现,更细的分工是提高效率的源泉。你应当看看我们用什么样的方式实现了测试平台的高效搭建。”

  凯文说,其实许多新同事也有着和小艾一样的疑惑,解决环境安装问题的方式是执行构建测试(Build Verification Testing,BVT)。

  的确,构建测试是个烦琐、重复性的过程。为了有效搭建环境,避免人为原因的错误,采取的策略是最大程度上地使构建过程自动化。因为环境的原型和步骤基本上是类同的,这种条件很适合自动化。于是工程师们使用构建了参数化的脚本、响应文件等构建测试的元素,有了这些元素,构建过程不再每一步都需要人工干预,出现错误的可能性有效降低。当然,由于平台本身的复杂性,自动化元素的构建由构建组专门维护。构建组把这个过程称为构建测试。通过测试验证环境安装的正确性。

52/5<12345>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • 黑鱼白
    2013-7-01 14:48:06

    如果是一个普通院校的大专生,结果会是这样嘛?怀疑甚至连面试的机会都没有吧

  • yanying0203
    2013-7-01 10:41:59

    向往这样的测试,毕业就能有这么好的系统的学习,难得

  • zww820
    2013-5-02 09:21:17

    写得很好。

  • lyj0418
    2013-4-28 11:26:07

    不错

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号