软件测试


网站首页 | 软件测试论坛 | 软件测试培训 | 软件测试博客 | 软件测试杂志 | 软件测试沙龙 | 软件测试下载 | 软件测试顾问
业界新闻 | 软件测试人才 | 软件测试技术 | 软件测试工具 | 行业软件测试 | 软件测试管理 | 软件质量专栏 | 软件开发专栏
当前位置:首页>>软件测试技术>>其他相关>>正文
漫谈软件测试工程师的角色定位
文章出处:本地化测试网 作者:崔启亮 发布时间:2006-01-16
    软件项目开发是个分工明确的系统工程,不同的人员扮演了不同的角色,包括部门经理、产品经理、项目经理、系统分析师、程序员、测试工程师、质量保证人员等。可见,软件测试工程师只是软件项目开发中的一个角色而已。

    戏剧舞台上的生、旦、丑是不同的角色,其表演方式具有明显的特征,这是由于角色决定的。同样,软件测试工程师的角色,在软件项目开发中也存在如何定位和表现自身的行为和责任的问题。

    此处讨论测试工程师的角色并非毫无意义。须知,角色不明,责任不清,行为就失去了参照目标,结果就可能很不理想了。轻则降低了工作质量和效率,重则被视为工作能力低下,可能要退出软将项目组的舞台了。

    软件测试工程师承担的任务

    角色决定工作内容和承担的任务。测试工程师的角色应该承担什么任务呢?这没有统一的答案。因为,这与软件公司的规模,软件项目管理制度,公司领导和项目经理的管理风格,以及具体软件项目自身的特点有很大关系。而且,测试工程师也有普通和高级之分。

    笼统的答案列举如下:

  • 设置软件测试环境,安装必要的软件工具。
  • 运行软件,发现和报告软件缺陷或错误。尤其需要快速定位软件中的严重的错误。
  • 对软件整体质量提出评估
  • 确认软件达到某种具体标准
  • 以最低的成本,最短的时间,完成高质量的测试任务
  • ......

    在这其中,最重要的是要明确,程序员的责任和目标。在执行任何具体测试任务前,都要在项目组内对于责任和目标达成共识,以免带来后续工作的相互推诿。

    提高测试质量的要诀

    另外一个值得注意的方面就是工作效率和质量,或许高级测试工程师与普通测试工程师的主要区别在于高级测试工程师可以更快地发现更多软件中的严重错误。对此,有什么可以借鉴的诀窍吗?请尝试以下方法,保证不会是您失望。

  • 首先测试程序的核心功能,然后测试辅助功能。
  • 首先测试功能,然后测试性能。
  • 首先测试常见情况,然后测试异常情况。
  • 首先测试经过变更的部分,然后测试没有变更的部分。
  • 首先测试影响大的问题,然后测试影响小的问题。
  • 首先测试必须测试的部分,然后测试可选或没有要求测试的部分

    软件测试工程师是项目团队中的服务员

    需要强调的一点是,无论你是多么高级的测试工程师,都要明白无论测试需要的工具多么复杂,测试步骤多么冗长,测试工程师在软件项目开发中始终都是扮演服务员的角色,这是由测试工作的特点决定的。任何服务都有被服务对象—客户,软件测试工程师的服务对象有哪些呢?

  • 最重要的客户是软件的用户。测试工程师需要站在客户的使用和需求角度测试软件,报告问题。
  • 项目经理也是客户。测试工程师需要报告测试工作进度和发现的问题,尤其是严重的问题。
  • 程序员是最经常打交道的客户。为了便于程序员重复报告的错误,尽量提供良好的软件问题报告,以便程序员可以更快的修复软件错误。
  • 技术文档工程师、市场开发人员和技术支持工程师也都是测试工程师的服务对象。

    软件测试工程师避免犯的几个错误

    前文已经指出测试工程师应该明确角色,明确任务和责任。知道哪些是自己份内的事,哪些是不属于自己的事。一定要尽最大努力完成份内的事,不要做不属于自己的事情,以免弄巧成拙。

    为了更好的扮演软件测试工程师的角色,尽量避免犯下面的错误:

  • 承诺完成测试的软件没有质量问题

    软件测试只是保证质量的一种方法,软件测试工程师的工作不会直接提高软件质量,因为绝大多数软件错误都需要程序员修复。软件测试只能证明软件存在错误,不能保证软件没有错误,不可能找出全部软件错误。个人的能力和对质量的影响范围很小,软件质量的提高要靠软件项目团队全体成员的共同努力。  

  • 承担软件的发布权利

    不要因为软件中存在还没有修复的错误,而试图提出更改软件发布的计划。也不要认为已经完成了测试计划,自己决定可以发布软件。因为,改变软件发布计划可能要失去进入市场的良机和很多客户,对此造成的经济和公司市场的损失将不是测试工程师能够承担的。另外,软件发布后,如果用户发现了新的软件错误,公司领导或项目经理可能将过错加在软件测试人员的头上,因为他们同意发布软件。通常软件发布的权利由产品经理、项目经理、测试经理、市场经理共同集体讨论决定。  

  • 扮演过程改进成员的角色

    软件测试工程师必须报告错误,有时也要分析错误的类型、特征和产生错误的原因。但是,不要主动提出改进软件过程的具体改进措施,更不要直接干涉程序员的工作方式,以免出力不讨好,影响今后的愉快合作。软件过程改进的方法是软件质量控制部门的事情,这是他们的本职工作。


站内搜索
相关文章
◎Windows应用程序的GUI测试指南
◎测试人员和开发人员和谐相处的技巧
◎团队精神与企业凝聚力
◎测试小技巧集锦之一黑盒测试
◎企业内部实现软件测试自动化的方案探讨
◎质量保证计划模板
◎测试的主要评测方法(3)
◎测试的主要评测方法(2)
◎测试的主要评测方法(1)
◎如何用正确的方法来写出质量好的软件的75条体会
◎Word安全保护技巧大搜罗
◎如何更好地与开发工程师沟通-给测试工程师的建议
◎第三方模拟测试环境的搭建
◎软件外包测试处理流程
◎建议有效的软件度量过程
◎嵌入式软件的覆盖测试
◎我眼中的自动化测试水平等级
◎联合测试
◎高可靠性软件测试方案探讨
◎QA活动的理解与实施
◎从六个角度分析流程建模
◎故障硬盘数据拯救全攻略
◎测试版本大全
◎程序员修身养性的十大原则
◎建模过程的盲点:软件集成中的软知识
◎ASP+SQL Server构建网页防火墙
◎基于嵌入式DSP的流媒体编解码器
◎软件开发全过程检测及测试自动化
◎PDCA循环小知识
◎想编写出优秀技术文档,先学学这四招
◎Tcl脚本的历史
◎Alpha和Beta测试简介
◎测试人员的挑战
◎测试要点总结
◎本地化测试寻找软件缺陷的方法
◎软件本地化测试类型解析与测试要领
◎全景记录:软件测试工程师的一天
◎破解软件外包人才匮乏困局
◎外包测试:雷声大 雨点急
◎URL欺骗的惯用招式
◎网络最经典命令行
◎近10年最强的50本计算机图书,您读过几本?
◎提高团队与个人的尽职度
◎从程序员到测试工程师
◎软件测试组织与方法
◎编写优秀Bug报告的艺术
◎基于模块化设计的嵌入式软件测试方法
◎一个初级测试工程师的工作总结
◎创建移动Web应用程序
◎Web服务器上防范基于ASP程序的木马
热门文章
◎软件测试工程师面试问题选登
◎一个初级测试工程师的工作总结
◎软件测试常用术语表
◎测试人员面试三步曲
◎DOS命令大全
◎什么样的测试人员是好的测试人员
◎软件测试基本方法
◎好的测试工程师应具备的素质
◎软件测试入门书籍(2)
◎我在软件公司成长的三年
◎面试官最爱问的问题背后真相
◎软件测试工程师面试题
◎应届毕业生少走弯路的十条忠告
◎有关软件测试的术语定义集锦
◎微软的软件测试方法(一)
◎我的测试经历(1)
◎全景记录:软件测试工程师的一天
◎软件测试步骤
◎谈谈对测试职业的看法
◎测试需要掌握什么
◎软件测试员自身素质培养
◎测试小技巧集锦之一黑盒测试
◎近10年最强的50本计算机图书,您读过几本?
◎软件测试人员职业发展助手
◎测试要点总结
◎如何制定成功的测试计划
◎测试的主要评测方法(1)
◎什么是ERP,通俗版解释
◎测试经验交流
◎软件测试及其支持工具
◎编写优秀Bug报告的艺术
◎软件产品测试标准
◎从程序员到测试工程师
◎微软的软件测试方法(二)
◎软件测试应遵循的八条原则
◎测试版本大全
◎我的测试经历(2)
◎测试人员的挑战
◎网管和黑客都必须知道的命令
◎QA活动的理解与实施
◎Alpha和Beta测试简介
◎网络最经典命令行
◎想编写出优秀技术文档,先学学这四招
◎个人职业生涯规划发展
◎你适合做测试吗?
◎软件测试的误区
◎我的测试经历(3)
◎软件测试的心理学问题
◎软件测试组织与方法
◎浮躁的国内测试界—2006年测试人员招聘感悟

Google提供的广告