发布新日志

  • 软件测试的职业划分的介绍

    2007-05-19 03:13:23

    外语水平

      了解——掌握该语言语法,可以进行简单工作文档的阅读、书写,能进行基本口语交流。

      一般——熟悉该语言下的计算机工作环境,能够熟练阅读并编写该语种工作文档,能进行日常口语交流。

      熟练——母语或类似母语程度,熟练使用该语种计算机环境,并完全具备行业内听、说、读、写等表达能力。

      精通——在该语种工作环境下具有丰富的经验,能在正式商务文件起草与商务谈判中熟练驾驭该语种的表达。

      功能自动化测试工具使用经验

      了解——仅具有个人学习经验,掌握工具的基本功能和操作方法。

      一般——了解自动化测试过程管理,并能对工具进行数据驱动式自动化脚本开发。

      熟练——熟悉自动化测试过程的实施与管理,能够结合工具自身特性,将自动化测试应用于企业级自动化测试过程里。

      精通——具有企业级自动化测试过程的实施与管理经验,能够结合工具特性和企业现状,为企业定制企业级或项目级测试框架,或自主开发测试工具等。

      性能测试/监控工具使用经验

      了解——具有个人学习经验,掌握工具基本功能,能够进行初级的脚本录制、开发与设置。

      一般——了解某些网络应用程序性能计数器,能够独立设计性能测试方案(场景),并结合工具完成简单网络程序的性能测试工作。

      熟练——具有企业性能测试工作经验,熟悉特定网络应用程序每个逻辑层的系统性能 指标,能够利用工具对特定架构(平台)的网络应用程序进行性能测试和性能分析。

      精通——在特定领域,能够独立承担大型或复杂结构网络应用程序性能测试的总体设计,对于该领域软件架构具有敏锐的性能瓶颈分析与定位能力,并对系统进行性能优化。

      白盒测试/代码分析工具使用经验

      了解——仅具有个人学习经验,掌握工具的基本功能和操作方法。

      一般——深入掌握该工具的使用,能将工具应用于实际的软件开发或单元测试工作中。

      熟练——具有基于工具的二次开发能力,或具有单元测试过程实施与管理的经验,可以根据工具的特性,将其灵活应用于企业级软件开发的某些过程里。

    测试管理工具使用经验

      了解——仅具有个人学习经验,了解工具的基本功能及使用。

      熟练——掌握工具的安装、配置与维护,具有企业应用经验,掌握工具使用中的操作细节。

      精通——掌握工具的技术实现细节,具有根据企业现状进行自定义或二次开发的能力。

      软件缺陷管理工具使用经验

      了解——仅具有个人学习经验,了解工具的基本功能及使用。

      熟练——掌握工具的安装、配置与维护,具有企业应用经验,掌握工具使用中的操作细节。

      精通——掌握工具的技术实现细节,具有根据企业现状进行自定义或二次开发的能力。

      软件开发经验

      了解——具有个人学习经验或实习经验。

      熟悉——具有特定语言的企业级软件开发经验。

      熟练——具有企业级软件架构设计或系统底层设计经验。

      数据库应用经验

      了解——掌握数据库原理,会使用sql语句。

      熟悉——具有企业级数据库安装、配置、管理、维护经验。

      熟练——具有企业级基于数据库的特定开发经验。

      精通——深入掌握特定数据库的性能参数,具有数据库的性能优化能力。

      软件配置管理/版本控制工具使用经验

      了解——仅具有个人学习经验,了解工具的基本功能及使用。

      熟练——掌握工具的安装、配置与维护,具有企业应用经验,掌握工具使用中的操作细节。

      精通——掌握工具的技术实现细节,具有根据企业现状进行自定义或二次开发的能力。

  • 软件测试管理常见问题及其回答[ZT]

    2007-05-14 18:40:00

    1、测试负责人要进行严格的测试进度跟踪吗?
    很多时候,由于人力资源的不足,测试项目负责人都是在执行测试,这样就使整个项目缺乏控制,一些问题(例如:有些成员的缺陷质量不够合格;开发人员修改不及时,系统某些功能发生严重问题导致部分功能无法测试。)得不到解决,耽误了进度。所以测试负责任必须全程监控项目,尽可能多的掌握信息。通常,测试负责人需要完成下面这些内容的管理工作:
    测试用例执行情况;
    每个测试员提交的缺陷情况;
    测试中是否发生突发问题。

    2、 测试也有版本控制吗?
    这里的版本主要是指测试对象的版本控制,也就是指对开发部提交的产品进行版本控制。在开发小组版本管理不规范的情况下,测试小组进行版本控制十分重要,要保证测试对象是可以控制的。建议开发和测试双方进行明确的约定,可以各自指定专门的测试版本负责人,制定提交原则,对提交情况进行详细的记录,这样基本避免了版本失控导致的测试失误或无效。

    3、如何处理测试人员的流动问题?
    人员流动不仅仅是测试部门,这是IT行业的普遍现象。从管理者角度,主管需要多多和团队内成员进行沟通,建立一个融洽的团队环境,及时掌握情况,可以早些进行相应的调整。但是只有企业建立好的用人制度,给员工提高广阔的发展空间和好的培训学习机会,才能从根本上解决这一问题。
    加强项目管理,强化文档管理并保证文档的有效性,可以大大减少由于人员流失带来的损失。同时,测试部门要建立培训机制,使新到员工接受直接或者间接的培训,快速适应工作。

    4、为什么开发人员经常抱怨测试工程师提交的缺陷质量太差?
    我们经常听开发人员说:“这不是缺陷!”,“这个缺陷没有,因为我的系统上运行正常!”。测试工程师本身就是做质量工作的,提交的成果本身就应该质量高些,为什么还会有这种现象?
    提交的缺陷引起争议是一种正常的现象,例如测试人员描述不清楚就会引起争议。减少甚至避免这种现象的方法是交叉测试,交叉测试是提高测试质量的一个有效手段,当然交叉测试会增加一定的测试成本投入。在测试任务完成后,测试工程师之间互相验证彼此提交的缺陷,就会避免了缺陷描述不清、因运行环境而产生的缺陷等一系列问题,从而大大降低了回归测试以及交流的成本,因而这种投入也是值得的,实际开发人员在单元测试阶段也会进行交叉测试,来提高开发质量。
    另外,测试人员一定要按照规范描述测试中发现的缺陷,一个缺陷至少描述清楚概要描述、详细描述、重现步骤三方面的内容,缺陷管理参考第八章的内容。

    5、“让那些新手来做测试,反正他们也不会什么”正确吗?
    在实际项目开发中,我们常常看到有些单位忽视测试团队存在的意义,当要实施测试时,往往临时找几个程序员充当测试人员。也有些单位尽管认识到了组建测试团队的重要性,但在具体落实的时候往往安排一些毫无开发经验的行业新手去做测试工作,这常常导致测试效率低下,测试人员对测试工作索然无味。
    根据笔者的经验,测试团队应首先聘请一名资深的测试领域专家,他应具有极为丰富的同类项目软件测试经验,对软件开发过程中常见的缺陷或错误了然于胸;此外,他还具有较好的亲和力和人格魅力。其次,项目测试团队还具有很多具备一技之长的成员,如对某些自动化测试工具运用娴熟或能轻而易举地编写自动化测试脚本等。
    另外,测试团队还应聘请一些兼职成员,如验证测试实施过程中,同行评审是最常使用的一种形式,这些同行专家就属于兼职测试团队成员的范畴。至于测试团队里里的测试新手,这部分人可以安排去从事交付验证或黑盒测试之类的

    6、测试同化现象是什么?
    同化现象是指随着时间的推移,开发人员会逐渐影响测试人员的思维和对缺陷的判断能力,尤其是针对同一产品,同一组开发人员和同一组测试人员共同配合了很长时间,很多本来是缺陷的问题,由于测试人员对软件“习惯成自然”的使用,会不被当成缺陷,尤其是在开发人员的解释和说服下。同化现象发生可能意味着“恶性循环”的开始:测试人员会帮着开发人员解释一个个缺陷的合理性,一轮有一轮的测试都不会发现问题。
    招聘新的人员,不同的测试项目组轮换去测试不同的产品,就可以避免。同时建议产品可以发布测试版,更多的人对其进行测试,就可以发现更多的问题。

    7、测试工程师如何避免定位效应?
    社会心理学家曾作过一个试验:在召集会议时先让人们自由选择位子,之后到室外休息片刻再进入室内入座,如此五至六次,发现大多数人都选择他们第一次坐过的位子。这种现象称为定位效应,说明人们习惯上凡是自己认定的,人们大都不想轻易改变它。
    定位效应在开发人员和测试人员身上都有体现。例如开发工程师针对某一自己写的功能,经常进行代码移植,这种复制的“功能”,由于上一次经过调试,在新的地方往往不会认真调试,这些代码往往会带来共享变量冲突等许多种类型的缺陷。
    定位效应体现在测试人员身上就是测试过的功能不再进行认真测试:在回归测试时,之前由于进行过认真的测试,往往会认为某些功能是可靠,只要验证一些以前发现的缺陷是否修改完成就可以了。这种现象在反复多次回归时表现的更加突出,因为回归测试中很多功能都会进行多次反复测试。众所周知,开发人员在修改缺陷时往往会引入新的缺陷,测试人员的疏于防范就会把这些缺陷带到用户这里。
    解决这种问题的方案一般有两个:
    (1)完整的执行测试用例:这种方法投入较大,但是在开发产品时最好在最后一次回归测试时测试的执行一次全部的测试用例。
    (2)交叉测试:测试人员交叉测试,就可以很大程度的避免定位效应。测试工程师在回归测试时互相交换任务,反复测试某一功能的机会大大减少,从而也就不会“主观的”人员某些功能没有缺陷。
    通常上面的两个方法都是结合使用的,既要进行交叉测试,又要全面执行测试用例,测试覆盖面要尽可能的广泛。

    8、测试人员忽然辞职怎么办?
    目前IT行业人员流动较大已经成为一种不争的事实,员工的辞职大多数都会给组织带来一定的影响,而这种影响基本是不可能避免的。在测试领域,员工忽然辞职也会带来很大的负面影响,尤其测试队伍规模较小时。面对这种情况,我们所能做的,就是如何最大限度的降低这种影响。
    根据作者的经验,主要有两种方法:第一种是在测试人员内部建立一个良好的学习环境,大家互相学习,这样某些特有技术不会被某一个人所掌握,而互相学习和提高自身,也是大多数成员愿意做的;第二种就是在组织中进行知识管理,把技术作为知识沉淀下来,这样新的员工在接手工作时容易上手,通过学习快速适应环境。
    此外,日常还要注意工作规范化,例如形成尽可能多的文档,都可以降低员工离职带来的损失。

    9、测试人员工作发生问题测试经理应该如何做?
    测试人员工作发生问题是测试经理经常要面对的问题,作为测试部门的领导,首先要做的是指出测试人员所犯的错误,使其尽快改正错误。
    唯一不能做的就是盯着下属的错误不放。总盯着下属的失误,是一个领导者的最大失误。英国行为学家波特说:当遭受许多批评时,下级往往只记住开头的一些,其余就不听了,因为他们忙于思索论据来反驳开头的批评。身为测试经理要根据测试人员的心理来进行指导,最大限度的调动每个人员的积极性来参加工作。

    10、不深入到具体测试工作时,测试经理如何考核员工?
    这种现象在测试规模较大的组织中很常见。测试经理应该尽可能的安排每周与每个成员在不被打扰的环境下进行谈话,这样可以尽早发现和解决很多问题。
    最为一个测试经理,主要工作之一就是定期的评定组织做了些什么并且是怎样做的。同时还要为员工做一个报告——关于充分了解测试人员正在做什么和怎样做的报告,以此来给测试人员做做工作成绩考核。这份报告要了解到每个人的动态。
    测试经理和每个员工重点是谈谈目前的工作,例如大家在工作中的问题或意见;是否需要帮助等。许多管理者经常抱怨没有时间在一周会见每一个员工来谈他们的工作。但是根据作者的经验,如果不能安排时间和员工进行每周的谈话,员工会来打扰测试经理的工作,因为员工很多问题还要要来找测试经理商议。
    同时对待员工要用他们能接受的方式,而不是我们自己可以接受的方式。“己之不予,勿施于人”,这条黄金法则可能会对许多生活中的纯粹的社交因素有效,但是并不是总对工作有用。有效率的管理者知道应该逐渐了解每一个员工需要怎样的对待方式。
    总之,只有尽可能多的和员工接触,才能更精确的进行考核。

数据统计

  • 访问量: 10986
  • 日志数: 17
  • 建立时间: 2007-05-13
  • 更新时间: 2007-06-13

RSS订阅

Open Toolbar