`
spasvo520
  • 浏览: 20259 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

软件测试中的软件管理经验谈

阅读更多

  软件测试中的软件管理经验谈 软件测试

  某甲问道:「测试做太多的话,会不会使得bug解不完?」

  某乙回答:「还不简单。只要不做测试,就没有bug。」

  上述对话,反应出许多软件工作人员对于测试的想法。对多数软件开发人员而言,测试大概是仅次于维护之外,最令人讨厌的工作。对软件研发主管来说,测试是必要之恶:做得不够后患无穷,做得过多又增加成本,延误商机。因此,如何能够规画与执行一个最经济有效的测试工作,当是软件研发主管们须研究的一个课题。

  软件测试的困难,在于它不仅是产品的测试,更是产品设计程序的检验。由于关乎设计的测试,准则不易寻找,经验未必得以再用,他山之石也有应用的局限性,因此难度颇高。欲提高测试的效益,有赖全盘的规画,确实的执行,与事后的检讨改进动作。许多小型软件研发单位,对于软件测试并不重视,但从许多稍具规模的软件公司均配置常设测试人员,乃至于测试品保部门来看,测试工作显然有其学问与价值的。

  测试工作没有最佳方法可依循,是因为不同的软件所需的测试手段不同。譬如小型软件与大型系统的做法不同;订制软件与软件包的要求不同;系统软件的测试往往无法采用应用软件所使用的技巧;游戏软件与库存系统有其各自需面对的测试标的。因此,测试人员必须因应软件的特性与资源的限制,加上过去相关的经验,规画最适合的测试方式。并随着经验的累积,不断改进作法,才能找出最佳的测试方法。

  由此可知,要做好有效的测试,不只是埋头苦干而已,它需要良好的管理,使整件工作获致最佳的成果。关于测试的管理工作,可从组织、规画、执行与检讨几个角度来探讨。以下谨就笔者粗浅的经验野人献曝一番,希望提供读者基本的协助。

  1)测试组织之设计

  由于人性总自认为自己的最好最正确,完全由软件开发人员兼任测试人员,并不值得推荐。实务上往往因软件开发单位的经济规模不够,使得开发人员经常兼任测试人员。但若可行,研发单位应尽可能配置专任的测试人员,尤其是独立于开发小组之外的测试负责人员。尽管是否应设置独立测试小组业界仍有争议,许多人甚至以为保障软件品质唯有从改进软件开发的程序做起,但大部份美国的软件公司均设有独立测试或品保人员乃至于部门,这说明了独立测试仍有其不可摇撼的地位。

  许多的软件研发单位将测试视为次等的工作,从而配置次等人员负责相关工作。如此一来,优秀人员无从参与,也缺乏意愿参与测试工作。结果软件品质不易度量,研发的成果常常被不佳的品质抵销,实为令软件开发人员泄气之事。主管是否能体认到软件测试的重要性,通常是成功的关键。软件测试固然是支持性工作,仍应配置合理的资源,以获取整体之成效。在当前的环境下,给予测试人员较多的关注,毋宁是必要的作法。

  测试工作的规划,至少包含两项要点:测试目标的订定与测试资源的配置。攻击需要目标,测试亦然。测试的目的在于找出软件的问题,提供改进之参考。目标若不明,测试人员即不知如何着手。

  测试目标的订定,最重要的在于软件通过的准则,亦即测试何时方可结束。常见的情形是:软件开发的进度不断落后,最后剩余的时间仅有两个星期,于是测试人员的目标就是把最后两周用完,尽人事听天命。究竟测试多完整,隐藏的多少错误,测试工作的生产力如何?皆一概不知。反正产品卖出去或上线后有的是时间改进。然而产品销售后再改进,成本往往大幅增高,甚至原有开发人员离职他调,连亡羊补牢都倍感困难。经验一再显示,事前的测试除错绝对比事后维护省时省钱,唯有卖不出去或不能用的软件例外。

  对于测试的要求可简单区分为二:一种是通过目标所订之软件品质;一种是在既定资源内达到最佳成效。前者要求山头一定要攻下,不达目的绝不停止。譬如目标为单位测试时间的错误发现率须低于某数字,若超过了就得延长测试。此种方式适用于品质要求较高的软件。至于后者则是上市时间已宣布,无法更改者,其目标着重于铲除最严重的错误。此种测试较着重测试的准备、经常对测试执行与除错设定时限与数量要求,其中最容易遵循的准则即为:重要功能永远先测。这两类测试的需求不同,足以影响到测试的计划、测试的顺序与关心的重点。读者不可不察。

  至于测试资源配置适当性,则是评估测试目标能否达成的重要参考指标。测试人员需要合理的测试资源,譬如要求总研发人力的20%以上。总时程的1/3以上。人力不足,测试流于形式,时程过短,找到错误也来不及除错,均不可取。除了测试在研发的比重,也需注意测试工作本身在规画管理、规格个案订定、测试执行、回归测试、训练准备工作的人力分配。人员的训练与设备的安排尤其容易轻忽,需加以注意。不同阶段测试的资源配置,也必须加以考量,如此可避免测试集中于功能测试,忽略系统测试。这些工作的适切安排,有助于协助测试工作时时都执行最重要,也最有效的测试。

更多文章:http://www.spasvo.com/News/Html/index.html

分享到:
评论

相关推荐

    软件项目测试管理经验谈

    "软件项目测试管理经验谈" 软件测试管理是软件开发的重中之重,软件测试员需要具备良好的素质和技术技巧,以确保软件的质量。下面是软件测试管理的经验谈: 一、软件测试员自身素质培养 * 首先,软件测试员需要对...

    软件测试及Bug管理经验谈

    本文将基于《软件测试及Bug管理经验谈》这一主题,深入探讨软件测试的核心原则、Bug管理的重要性和有效实践,以及如何选择适合的Bug管理工具。 #### 清晰的质量概念 软件测试的第一步在于确立明确的质量标准。这...

    软件测试及Bug管理经验谈1

    【软件测试】是软件开发过程中的关键环节,旨在确保产品的质量和功能符合预期。软件测试不仅包括功能验证,还包括性能、稳定性、用户体验等多个方面。在进行软件测试时,我们需要明确几个核心概念: 1. **质量标准*...

    测试新手学习宝典(如何编写测试用例;测试用例编写规范 ;软件测试管理经验谈;系统测试的基本方法)

    本文档是测试新手的学习宝典,包括如何编写测试用例;测试用例编写规范 ;软件测试管理经验谈;系统测试的基本方法等等

    软件测试经验谈

    测试工作在开发过程中占据 软件测试经验谈 软件测试 我从事软件工作多年,对如何作测试、如何管理Bug有一些经验,和大家分享一下 1、Bug管理的作用层次 软件开发的重点已经从技术转到管理与质量控制上了,如何...

    计算机软件测试技术 软件测试培训

    软件测试是软件开发过程中不可或缺的一部分,其主要目的是确保软件产品的质量和可靠性。测试不仅是找出软件中的错误,更是对整个软件生命周期的一种质量管理手段。以下是对软件测试相关知识点的详细阐述: 1. **对...

    特软件测试中心新员工培训

    - **软件测试策略与方法经验谈**:分享实践经验,探讨有效的测试策略。 - **编写高质量文档指南**:提高文档编写的质量和效率。 - **测试工作改进**:探讨如何持续改进测试工作的效率和质量。 - **软件测试文化**:...

    软件测试必看 入门级的教程

    15.1.1 软件测试中的“二八”原则 81 15.1.2 软件黑盒测试解决的问题 81 15.2 软件黑盒测试常见错误类型及说明 81 15.2.1 用户界面错误 81 15.2.2 功能性 81 15.2.3 人机交互 82 15.3 命令结构和录入 87...

    非常实用的软件测试综合资料库

    在谈到软件测试时,许多人都引用Grenford J. Myers在《The Art of Software Testing》一书中的观点: ①、软件测试是为了发现错误而执行程序的过程; ②、测试是为了证明程序有错,而不是证明程序无错误。 ③、一个...

    浅谈软件项目管理

    ### 浅谈软件项目管理 #### 一、引言 软件项目管理是在软件开发过程中确保项目按照预定的成本、进度和质量顺利完成的关键活动。它涉及人员、产品、过程和项目的管理和控制,特别是在大型软件项目中尤为重要。与...

    软件测试方法案例设计的论文

    总的来说,"软件测试方法案例设计的论文"会深入探讨黑盒测试和用例设计在软件测试中的应用,提供实际案例和经验分享,以帮助测试人员提高测试的质量和效率,从而保障软件产品的稳定性和可靠性。通过阅读这篇论文,...

    软件测试入门(必看)

    15.1.1 软件测试中的“二八”原则 81 15.1.2 软件黑盒测试解决的问题 81 15.2 软件黑盒测试常见错误类型及说明 81 15.2.1 用户界面错误 81 15.2.2 功能性 81 15.2.3 人机交互 82 15.3 命令结构和录入 87...

    功能和性能测试经验谈

    在软件测试领域,功能测试和性能测试是两个关键的环节,它们对于软件质量的保障至关重要。功能测试关注的是软件是否能够按照预期执行其预定功能,而性能测试则侧重于评估软件在各种负载和压力下的响应速度、稳定性和...

    软件测试初学者入门.DOC

    总的来说,软件测试初学者需要从理论和实践中双重学习,理解测试的目的和方法,掌握业务知识,设计和执行测试用例,以及利用各种工具和资源提高效率。只有不断学习和实践,才能在软件测试领域建立起坚实的基础,成为...

    小型B/S内部管理类软件开发经验谈(C#)

    ### 小型B/S内部管理类软件开发经验谈(C#) #### 一、项目背景与概述 在本文中,我们将探讨一个小型B/S架构的内部管理类软件开发案例。该软件旨在提供基本的项目管理功能,包括添加、删除、编辑和查询等核心操作...

    SVN管理代码经验谈

    在这个"SVN管理代码经验谈"中,我们将深入探讨SVN的基本概念、安装与配置、日常操作以及最佳实践。 首先,理解SVN的核心概念至关重要。 SVN仓库是存储所有项目文件的地方,每个文件都有一个唯一的版本号,记录着...

Global site tag (gtag.js) - Google Analytics