希望与软件测试爱好者交流

发布新日志

  • 如何成为一名优秀的软件测试工程师

    2007-04-11 17:30:15

    如何成为一名优秀的软件测试工程师

    字体:        | 上一篇 下一篇 | 打印

     现在软件测试工作越来越收到企业的重视,许多人员也投入到软件测试的行列中来,软件测试工程师的队伍越来越壮大。但是如何成为一名优秀的软件测试工程师呢?这是大家比较关注的一个问题,尤其是初入这个行当的莱鸟更想了解这个问题的答案。本文根据自己多年来在IT公司从事软件测试的经验总结了一些东西给大家共享,同时也希望大家提出宝贵的意见和建议。 

       起码有三年以上的软件开发经验 

       现在许多软件企业招收一些刚刚毕业的大学生或者非计算机专业的人员作为自己公司软件测试工程师,这是非常错误的,也是对软件测试不负责任的表现。虽然他们可以发现软件中的一些错误,但是对于软件中的一些关键,致命,危险的错误他们是很难发现的。大家都知道,软件工程中有个模型叫瀑布模型,这是最基本的软件模型,这个模型又叫碗状模型,因为开发位于碗的最底部,左上方依次为建模,需求分析,设计;右上方依次为测试,部署,维护。这就是说明软件开发是一切软件活动的基础,同时也是软件测试的基础。一个人只有经历过一定年限的软件开发工作,才可以积累丰富的经验,知道在软件中哪些地方容易出错而那些地方不容易,这给以后的软件测试工作带来非常宝贵的经验。 

       有逆向思维的能力 

       我曾经接触过一些软件测试工程师,他们干了一段时间软件测试工作后返回去又开始去做开发工作了,问他们为啥?答案是软件测试工作太难了,开发是顺向思维,而测试是逆向思维,老要找一些稀奇古怪的思路去操作软件。软件的使用者千差万别,软件在使用过程中遇到的各种现象也是千差万别的,所以要求软件测试工程师需要具有一些逆向思维的能力,想别人所不想,测别人所不测,这样才可以找到更多的软件中的错误。这是作为一名优秀的软件测试工程师最基本的素质。 

       善于同软件开发人员沟通 

    沟   通是当今软件项目中需要掌握的最关键技术之一。软件测试人员要善于同软件开发人员沟通,软件测试人员与开发人员搞好关系,使测试人员不成为开发人员的眼中钉,这对于提高整个软件项目质量是十分重要的。沟通主要包括: 

       讨论软件的需求,设计:
       通过这样的沟通,你可以更好的了解所测试的软件系统,以至于尽可能少的测试出软件中不是错误的“错误”,从而降低给软件开发人员带来的压力。 
       报告好的测试结果:
       作为一个测试人员,发现错误往往是测试人员最愿意而且引以自豪的结果,但是一味地给开发人员报告软件错误,会给他们造成厌恶感,降低整个软件的质量和开发进度。所以作为一名软件测试工程师,当你测试的模块没有严重的错误或者错误很少的时候,你不妨跑到开发人员那里告诉他们这个好消息,这会给你带来意想不到的结果。 
       讨论一些与工作无关的事情:
       作为一个测试人员经常和开发人员讨论一些与工作无关的事情,比如大家可以谈谈新闻,趣事,家庭…这样可以加强相互间的默契程度,许多统计表明,这样可以更好的提高软件工作质量。 

       善于同领导沟通 

       测试人员往往是领导的眼和耳,领导根据测试人员的测试结果可以了解公司的产品质量,从而调整其他的工作。领导工作一般比较繁忙,所以作为一名优秀的测试人员要学会把测试结果进行总结,最好以图表的形势给领导看。
       掌握一些自动化测试工具 

       测试工作往往是比较繁琐,枯燥无味的工作,测试人员长期处于重复的手工工作,会降低测试效率,并且对于测试质量也往往是不利的;况且许多测试不使用测试工具是不可以进行的,比如性能测试,压力测试等等。目前市场上有许多测试工具供你使用,你可以根据自己的需要选择一些测试工具来辅助你的测试。但是要记住一点,不是说有了测试工具就不要人工测试了,测试工具不是万能的。 

       善于学习的能力 

       软件测试技术随着时间的变化也在做一些提高和改进,作为一名优秀的测试人员要善于利用书籍,网站,论坛,交流等各种途径不断提高自己的软件测试水平。 

       提高自己的表达能力 

       软件测试人员当发现软件中存在缺陷的时候,往往要书写缺陷报告,缺陷报告要写得详尽清楚,使开发人员能够尽快定位错误,修改错误,所以作为一名优秀的测试人员提高自己的写作能力是非常必要的。
       了解业务知识 

       更好的了解你说测试软件的业务知识是非常重要的,对业务知识了解得越深入,越能够找出更深入,更关键,更隐蔽的软件错误。所以作为一名优秀的软件测试工程师,要多向该领域专家,同行学习,提高自己的业务知识水平。 
       以上仅为个人的一些经验所谈,希望大家都能够成为一名优秀的软件测试工程师。

  • 软件测试职业发展的各个阶段

    2007-04-11 17:29:19

    软件测试职业发展的各个阶段

    字体:        | 上一篇 下一篇 | 打印

        这是国外公司的职位分布,国内一些走在前列的公司,也差不多

        在国内可能晋升要快的多,可能2-3年就走完了国外要15年的路,呵呵,欢迎大家发表意见

        初级测试工程师
        刚入门的拥有计算机科学学位的个人或具有一些手工 测试经验的个人。开发测试脚本并开始熟悉测试生存周期和测试技术

        测试工程师/程序分析员
        具有1-2年经验的测试工程师或程序员。编写自动测试脚本程序并担任测试编程初期的领导工作。进一步拓展编程语言、操作系统、网络与数据库方面的技能

        高级测试工程师/程序分析员
        具有3-4年经验的测试工程师或程序员。帮助开发或维护测试或编程标准与过程,负责同级的评审,并为其它初级的测试工程师或程序员充当顾问。继续拓展编程语言、操作系统、网络与数据库方面的技能

        测试组负责人
       具有4-6年经验的测试工程师或程序员。负责管理1至3名测试工程师或程序员。担负一些进度安排和工作规模/成本估算职责。更集中于技能方面

        测试/编程负责人
        具有6-10年经验的测试工程师或程序员。负责管理8至10名技术人员。负责进度安排、工作规模/成本估算、按进度表和预算目标交付产品。负责开发项目的技术方法。为一些用户提供支持与演示。开发一些特定领域的技术专长

        测试/质量保证/开发(项目)、经理
        具有10多年的工作经验。管理8名或更多的人员参加的1个或多个项目。负责这一领域(测试/质量保证/开发)内的整个开发生存周期业务。为一些用户提供交互和大量演示。负责项目成本、进度安排、计划和人员分工

        计划经理
        具有15年以上开发与支持(测试/质量保证)活动方面的经验。管理从事若干项目的人员以及整个开发生存周期。负责把握项目方向与盈亏责任阿

  • 面试问题积累-新手注意!

    2007-04-11 17:21:14

    面试问题积累-新手注意!

    字体:        | 上一篇 下一篇 | 打印

        面试软件测试工程师一般会问到这样一些问题:首先你对软件测试有些什么了解?这个一般要把最基本的意思都回答出来,我整理了下。
    1.什么是软件
    •软件测试就是在受控制的条件下对系统或应用程序进行操作并评价操作结果的过程,所谓控制条件应包括正常条件与非正常条件。
    •软件测试过程中应该故意地去促使错误的发生,也就是事情在不该出现的时候出现或者在应该出现的时候没有出现。从本质上说,软件测试是“探测”,在“探测”中发现软件的毛病。
    •软件测试贯穿于软件定义与开发的整个周期 ,软件的需求规格说明书 ,结构设计及程序编码,都属于软件测试的对象。

    2.软件测试的方法。对黑盒白盒测试要了解,这是基本的。

    3.软件测试的工具
        有IBM 的Rational Teststudio测试套件,还有MI 的Winrunner Loadrunner 和qtp测试工具,总的来说分为功能测试工具性能测试工具以及测试管理工具.

    4.软件测试的目的
        软件测试的目的是为了保证软件产品的最终质量,在软件开发的过程中,对软件产品进行质量控制。一般来说软件测试应由独立的产品评测中心负责,严格按照软件测试流程,制定测试计划、测试方案、测试规范,实施测试,对测试记录进行分析,并根据回归测试情况撰写测试报告。测试是为了证明程序有错,而不能保证程序没有错误。

    5.比较著名的软件测试的网站。

        还有就是多看看软件测试的常识等等。
        这些都是我面试时被问到的问题,还有就是很多公司会问你做过什么项目,一定要弄懂,对于学生说课程设计就可以了,但要能全说出来。经验是不断积累的,希望大家都能把握好每次机会,时刻做好准备。



    此文来源于51testing论坛,转载请注明出处
  • 一位软件测试工程师的工作总结

    2007-04-11 16:37:00

    一位软件测试工程师的工作总结

     

    我最初参加测试工作的时候,不知道什么是软件测试,集成测试和系统测试的概念经常混淆, CMM 是什么就更加不知道了。那时候最简单的开关机也是通过直接拔插电源完成,安装系统对我来说简直是有史以来人类的最高技能,对于那些拿着螺丝刀安装机器的人就认为是宇内超级高手,身具杀人于无形之绝世秘技。拿破仑说不想当将军的士兵不是好士兵,我最初的梦想就是想成为软件测试的高手,傲视天下。所以不断偷师,总结经验,自认为掌握了成为高手的几个秘技,这几年混迹 “ 江湖 ” 还算无往而不利。不敢独享,望与吾辈测试人员切磋,早日总结成功密技之大成,助新进人员早日入门,也算不愧对东北活雷锋的称号。

    第一招 学会利用网络

       刚参加工作面对浩瀚的网络世界,当时如刘姥姥进大观园,什么都新奇,什么都想要,从网上下载很多源程序的代码,软件技术文档之类,恨不得把所有的好东西收集到手中,其实有些在他人看起来就是垃圾一堆。当时觉得有了这些 “ 武林秘籍 ” ,成为高手指日可待。最初参加工作由于自己工作努力有幸转为开发,加入项目组后我的习惯还是没有改,反而变本加厉,手中的资源更加多,上网的时间更加频繁。

        一次项目经理分配任务,觉得依靠手中的秘籍加上自己的 “ 聪明才智 ” 很快会完成,不料短短的时间,所有的一切变成了马奇诺防线。解决问题很慢,思路不清晰,项目经理在对我施压的过程中教会了我终身难忘的一招,学会利用网络寻找要解决问题的答案,从此 Google 成了我的最爱,关键字成了我变化的招数。在软件测试工作中,他帮我解决了很多疑难问题,解答了很多令我迷惑的地方。也是我帮助测试同行解决问题手段之一,很多软件测试新手,甚至老手都没有意识到自己手上就握有 “ 无敌秘籍 ” ,所以只要你耐心找,答案就在身边。

        这里总结一下利用网络搜索引擎的技巧:

    组合搜索

        每次搜索某个文件,如果只给出一个单词进行搜索,经常会出现成千上百万计的匹配网页。然而如果再加上一个单词,那么搜索结果会更加切题。

    选择表述内容的词组

        一般我在网页搜索引擎的时候,选择一些可以表达我要查找内容的关键词组,用来缩小搜索范围,从而找到搜索结果是最好的办法。运用词组搜索涉可以先先简单地输入一个问题作为词组搜索,如果仍然找不到合适的,那就用多个可以表达要查询内容的关键字进行查询。

    定位信息来源

        有的时候用词组搜索不到或者无法准确表达所需信息。可以用另一种方法直接到信息源,就是直接到到提供某种信息的站点去。可以用公式 “www. 公司名 .com” 去猜测某一组织的特点。从而得到所要搜索的信息的主要词组

        其实网络上还有很多关于搜索技巧的文章,大家可以自行学习。千万要记住搜索引擎是帮助你成功的有力武器。

    第二招 学会动手

        参加软件测试工作后,随着工作经验的增长自我感觉越来越好。在公司里也逐渐受到同事领导的重视,一次针对公司的新的软件功能进行测试的时候,像往常一样 “ 随手 ” 测试出了几个 Bug ,然后 “ 仔细 ” 的填写了 Bug 单(这个 Bug 的现象已经出现了很多次了)。这时候测试经理走过来,重新复查了一下填写的 Bug .他在重现我的 bug 的过程中,简化了我的输入变化, bug 神奇的又出现了,同样的现象,他关闭软件重新变化输入,扩展出 10 几个变化后,软件不动了,内存不断上升。终于他找到了产生软件的 Bug 的原因,然后对我说 “ 寻找 Bug 要准确定位,我们开发团队是一个整体,时间是等量的,时间不在你身上浪费,就是在他身上浪费。如果测试人员每次发现的 bug 描述不清楚,并且多个问题潜在的错误原因是一个,虽然操作可能稍微有些变化。这样开发人员在重现 bug 的时候他要调试跟踪判断,很花费时间,而且效率低。如果测试人员发现 bug 的时候多动手可以更加准确的定位 bug 步骤和原因,给开发人员最精确的步骤和准确的描述,这样整个团队才能高效,所以需要大家协作!。 ”

        在以后的日子里,每次解决问题的时候我都记得多试验几次,多尝试。网上很多朋友还有同事问我问题的时候,其实他们只是万里长征就差一步,只要再多动手实验一次就可以达到目的了。所以多动手,多尝试。

    第三招 思考自己所作的

        刚开始入行的时候,总是思考如何做好软件测试。认为公司的测试流程混乱总是很郁闷,认为自己学不到东西,如何才能测试好产品,常说心动不如行动,以前看到古龙小说中经常出现的场景无名小子不断挑战高手,总结积累。我总结了有些经验是实战中得到的,所以不断尝试引入新的测试流程然后评估,这个过程虽然很痛苦,但是从中积累了不少经验。这段时间让我学习到了很多东西,接触了 ISO,CMM ,测试管理工具,自动化工具(因为公司不正规给了我很多学习的机会,后来到了比较大的软件公司后,以前的经历给了我更多的发展机会,因为大公司非常正规了,公司内部人员分工明确,所以能力的锻炼反倒少了)。由于工作中经常写报告反倒养成了总结教训的习惯,因为纸面上的东西是永远也忘不掉的。在写的过程中可以不断补充扩展,整个过程是思想升华的过程,当年达摩面壁九年就是融会贯通的典型例子,如果他不是有个思考的过程,他也不能成为一代大家。如果后来不时有人把他的绝技记录下来,也就不能有后来的少林寺七十二绝技。

        所以善于思考,总结经验,也是成为高手之路的不二法决。

    第四招 学会利用论坛资源

        其实测试新兵和测试高手之间的区别,往往是不会利用现有资源。在论坛中我们会看到很多新手不断的提问,但是有很多问题其实都是已经别人提过了,或者已经有解决方案的。所以经常会看到 “测试高手”的身影,并且不提问题,而且还能“锄强扶弱”,是测试新丁的救命稻草。好像是高手们无所不能,其实摘掉这层耀眼的光环,他们并没想像得那么厉害,只不过通过自己的搜索找到的答案,然后帮助其他人。当然也有很多人都是通过自学,然后在论坛中交流得到了很多经验,高手其实也是因为善于思考问题,亲自动手解决问题。所以动手和利用论坛资源的过程中他们也在不断提高。

        很多时候看到论坛中有人提问,问题描述不清,很多人看了很困惑。发贴题目动不动请高手帮忙,救命之类的,好像天下大乱,世界末日。虽然这个题目很招人,但是无法让那些想帮助你的人帮你,因为题目不清晰,而且高手字样吓阻了很多人。其实问问题也是个思路整理的过程,描述清晰,让人理解清楚,才能望文知意知道你的当前发生问题的环境,才能让那些想帮你的人解决问题,否则给人无从下手的感觉,解决问题效率不高。

    第五招 学习和你所测试的软件产品相关的知识

        要想成为好的测试人员,还要了解你要测试的软件的相关知识。要了解软件产品的架构是什么样的。要了解软件的市场需求,在接触软件之初要可以多看看用户的反馈信息,这些才是用户最关心的,也是你在测试中需要注意的问题,满足客户是最大的需要。但是了解软件需求之后要学会要多读些软件系统的技术文档,软件设计文档,这些文档可以帮助你了解产品如何工作。还有多看看公司 Bug 库中的问题,这些存在的问题可以帮助你了解软件产品那些地方存在缺陷,软件系统那些地方会出现错误。软件是运行在一个大环境中,如果对系统不熟悉,那么有些问题你不能从一个更广阔的层面考虑,学习操作系统的知识,有助于你发现缺陷,定位问题更加准确。比如软件运行在 Windows 或者 Linux ,如果你不懂操作系统,你就无法建立测试环境,有些时候时候软件的组件发生问题,就是你系统配置造成的,对系统不熟悉,你会把外在原因归结为软件本身。所以要学习关于和软件系统相关的知识,比如编程,网络,数据库等。不一定你要学习到多好的程度,只是通过这些扩展的知识面,你可以在发现问题,解决问题上不会局限在狭小的圈子里。

        和一切相关的人员交流,不同的交流渠道,获取消息是不同的,角度也不同。和客户交流,你会在测试中从客户的角度发现问题;和开发人员交流,你会了解开发人员怎么实现软件功能的;和项目管理人员交流,你会知道开发进度以及遇到的困难。

  • 空间建好了,多交流

    2007-04-05 14:15:27

    我的空间昨天开通了,我做从去年十月八号正式开始测试工作的,做的功能测试,希望与各位测试爱好者多交流!记得留言呦!

  • 测试8000薪水是这样得到的

    2007-04-04 18:58:20

    这听起来是个很有诱惑力的话题;也的确是个很有诱惑力的话题。

    很多做测试的朋友千万次的问,测试行业能挣到高薪吗?从事测试工作有发展吗?我能够忍受枯燥无聊的测试工作吗?

     

        这里我不想谈所有问题,只谈谈如何获得高薪,获得高薪需要哪些素质,那些条件,多少年的工作经验等。

     

        我认为的测试人员分类

     

        测试人员在软件开发中基本由两大类:一类是起步就做测试,一类做过开发后来转为测试。

     

        最近在网上同一些朋友聊天,经常聊到测试人员是否需要开发经验这样一个话题。我个人认为,又开发经验更好。我也倾向于由开发经验的测试人员可以获得更好的发展。但这都是一个动态的过程,起步就做测试的人可能后来也慢慢掌握开发经验。

     

        测试人员的成长阶段

     

        测试人员基本上可以分为如下几个阶段,手工测试阶段、工具辅助阶段、定制工具阶段、初级管理阶段、高级管理阶段、业务测试专家(此阶段在等同于在管理方面发展的初级、高级管理阶段,这个阶段的测试人员熟悉测试的各个方面,逐步专项某个领域的测试)。

     

        手工测试阶段

     

        处于此阶段的测试人员一般是刚刚进入这一行,或者刚刚换了一个公司(新来的吗)。这个时候是很重要的积累时期,自动此时工具只是一个辅助,重要的时你要有如何测试一个软件的思想。

     

        工具辅助阶段

     

           这个阶段的测试人员对各个类型的测试都有所了解,为了提高测试效率,开始使用测试工具;或者为了以后的职业发展开始关注自动测试,并主动或被动的学习测试工具。这时候自己心里一定要有数,那些测试工具会对职业生涯有帮助。目前国内的测试人员都在学习一些大厂商的测试工具,这些工具的确不错,但是不一定都对以后的职业发展有利。一般来说这个时候首先要确定自己在功能测试方向发展还是在性能测试方向发展。这样可以有针对性地学习各类别的工具。当让有时间和精力可以多学习一些,多多益善。另外还有一些白盒测试工具,如果想在白盒测试方向发展可以多多研究。

     

        定制工具阶段

     

        这是工具辅助阶段的延续,一般定制工具分为两种,一种是对第三方厂商的工具进行插件开发或利用工具的脚本语言开发可重用的类库;另一种是开发公司内部使用的工具。第二中情况难度较大,需要测试人员有较高的开发水平。一般来说只有在商业测试工具不能满足测试要求时才开发自己的测试工具。当然有时候不需要使用庞大的商业测试工具的时候也可以自己开发一些小的、能够满足测试要求的工具。这一般使用产品开发所使用的语言或者PerlPython等。对于使用Java开发的产品可以使用BeanShell等脚本语言。

     

        业务测试专家

     

        此阶段的测试人员已经熟练的掌握了多种工具,或者已经具备了为产品定制测试工具的能力。这个时候的测试人员应该做长期的职业生涯考虑,如果从事某个领域的产品测试时间较久,可以继续深入研究此领域里的相关技术,逐步能够提出对产品开发有建设性的建议。一般来说这个阶段的测试人员会在产品规划的前期作为高级测试人员参与进去,为产品的需求搜集和设计提供建设性意见。

     

        初级管理阶段

     

        一般来说这个阶段是指你处于项目组长位置的时候。这时可以制定测试计划,组织组内人员编写、修改测试用例。这个阶段的人员一般一般可以考虑向业务测试专家方向或者高级管理人员发展。

     

        高级管理阶段

     

        经历初级管理阶段后,积累了初步的测试管理经验。这时候一般会参与测试计划的制定、人力资源调配、各种资源分配等。

     

        各阶段的薪资状况

     

        就目前国内市场来看,按照测试人员所在的公司类型大致可分为如下几类:

     

          1。国内中小企业

          2 。国内大企业

          3。测试外包公司

          4。国外企业

     

        同一个等级的职位在不同类型的公司可能有不同的定义,比如在国内的小企业可能就以两个测试人员,那你可能身兼多职,既是项目组长,又是项目经理。国内大企业一般来说同国外的企业的职位基本对应,但是一般来说国内大企业的测试经理到国外的公司也只能是个测试组长。

     

        测试外包公司在这几个类别中是个另类,在这种公司工作,基本就是技术类,很少有管理类的。

     

     

     如何获取高薪?

     

        一般来说在国内的中小公司做测试一般在1500-3000人民币每月。个别也有高的。在国内大公司高级人员一般可以拿到6000-8000人民币每月,初级人员大概在3000-5000之间。外包公司给的比较多,有经验的人员可以拿到6k8k。在国外的大公司工作,就目前了解,初级人员在4k7k之间,高级人员(有多年的测试经验)可以到8k-10k左右。

     

        如果你是刚刚毕业,那么能够进入大公司或国外的大公司,可以起步较高。如果你有几年工作经验,那么可以进入国外大公司,逐渐往管理职位发展,不过一般来说这很难。不过国外的大公司,一般提供技术和管理两条路供选择。毕竟管理职位有限,在国外的某些大公司,有经验的技术人员和一般的管理人员的薪资基本持平。

  • 写给测试新手

    2007-04-04 18:55:29

    入门
    在五年前我也是一个新手,是个很菜很菜的新手,那个时候我大学还没毕业(专科,没有名气的专科),因为一个机会让我进入了测试行业,我什么都不懂,我不会最简单的网络测试命令ping,不知道什么是搜索引擎,刚刚知道怎么上网,没有文档基础,可以说是一张白纸,然而我接触的第一个项目就是《防火墙测试》硬件防火墙,以前连那个东西是什么都不知道,还以为是防火用的!就这样我被拉了来,进行了一周的培训,我开始工作了,开始是功能测试,不过更多的时间是在搬机器、防火墙等,大部分是体力活,可是我没有选择,因为我知道就业的严峻形势,我坚持。
        也许上天对我不薄,我遇到了一个好老师……途老师,他手把手的教我们测试,平时跟我们住在一起,只要有时间就灌输知识,工作心态等,他管这种叫做洗脑,后来才知道这种方式给了我们很大的帮助,有工作的、和对生活的态度!
        第一个防火墙的项目完成后,我算对测试有了一个大概的认识,不过还不能说是入门,后来我就到了实习的这家公司,我们的总工,也是老大哥(他可不老),给我们制定了在公司内的发展规划和学习规划。在这段时间里真是学了很多的东西和学习方法;
        在这其间我学习了网络基础知识,防火墙基础原理,我的毕业论文《防火墙测试》老师第一个给了我优秀,等等… …同时我还在跟我们的另外一个老师,崔老师,学习一定的文档基础知识,这给以后的编写测试方案和测试报告,打下了基础。
        总结:测试的入门首先要有一个机会,如果没有机会就没有发挥的余地,其次最好要有一个能带你入门的老师,(这个可能也是大家现在报怨最多的,说自己没有好的老师,我比大家幸运了一些),再次也是很重要的一点,你一定要有一个很好的态度和积极向上的心态,只有这样才能去入门,才有进步;最后要有刻苦的精神,测试工作是很累的,入门的时候更是如此。对于新手的学习,主动积极,给自己制定一个计划,比如我想半年达到什么水平,不要太高,但也不能太低,然后自我检查;学习方法;我觉得很重要的一方面是自学,其次要多问有经验的人,多去交流,学会用搜索引擎,google就很不错,现在其实很多问题都可以在网上找到答案,这个适合新手,中手,高手等!
    接下来我想写”升级“!

    晋级
    第一次晋级
        测试真正的入门应该是工作半年后,那个时候我已经完成了《防火墙测试》同时在那个阶段还做了一些如IDS,扫描器等的测试;
        在工作半年后我们接到了我工作中的第一次任务重时间紧的测试,这次测试有60多个项目,包括网络的系统,图像识别系统,Web系统,视频识别系统等等,这些涉及的知识面太大了,在接到这个项目之前和项目开始之前,我们的总工和我们测试部的部长(我的另外一个老师,谢老师给了我很多帮助);因为此测试的系统比较多,涉及的知识面很宽,所以挑战性也很大,需要对每一个被测系统开发测试方案,执行测试,然后生成测试报告,基本上每天都要测试完成两个项目;最终这个项目完成了,我们也锻炼了一只可以打硬仗的测试队伍。
        大概的总结一下这个项目:60多个被测系统,需要根据用户需求开发60多个测试方案,同时要执行完成,生成测试报告;整个项目可以分为以下阶段:
    测试准备阶段—>方案开发阶段—>测试执行阶段—>报告阶段。
    测试准备阶段:主要完成知识的储备,对被测系统的相关知识进行学习,尽量了解测试对象;
    测试方案开发阶段:根据用户需求和测试系统的相关知识开发测试方案,作为测试的依据;
    测试执行阶段:这个阶段是根据开发的测试方案执行测试
    报告阶段:完成测试后根据测试的数据编写测试报告,提交测试报告。
    测试组织:
    测试分为两个测试组,每个组分别负责60多个项目中的一部分;
    测试组有一定的分工:
    测试组长,负责测试的整体工作。
    主测工程师,负责测试的主要执行工作,
    辅测工程师,辅助主测工程是完成测试任务;
    记录人员,负责测试过程中的记录;
    通过这个项目后,我的知识体系得到了很大的提高,虽然有些东西不太明白但是我的知识面扩了很宽;通过这次测试我还学习到了,如何编写测试方案,如何执行测试,如何编写测试报告(入门级);
    可以说从此后,我得到了入门后的第一次高。
    总结:
    1)入门后,要有实战的项目来提高;
    2)通过项目的锻炼,尽量的去掌握被测系统的相关知识;
    3)通过项目的锻炼,尽量的去掌握测试相关环节的技术,如果不能理解先按照要求完成,     然后在去进一步消化;
    4)一定要总结,再苦再累都要抽出时间去总结学到的技术,发现的问题等等;
    5)心态,工作很累,要有一个很好的心态,来乐观的对待劳累的工作。
    开始真正意义的性能测试
    当我晋级后,完成了那个60个系统的验收测试后,我们接到了一个服务器选行的项目,在这次测试中我来负责服务器综合性能的评价,这是我真正的执行性能测试;
        在这个项目中我学到了如何对服务器的性能进行评价,主要是学习了服务器测试的工具如NetBench,ServerBench,BenchMark factory等;
    总结:
    1)要培养独立的测试工具学习能力;
    2)培养测试工具的使用能力;
    3)掌握测试工具能够测试的指标。

    开始独立工作
    工作一年半后开始独立开发测试方案,此时先是对开发方编写的测试方案进行评审(依据我们部长编写的测试方案评审依据进行评审)在这期间主要做了一些验收测试;
        同时领导给了我单独完成一个项目的全部过程,我来组织测试,编写测试方案、组织执行测试、编写测试报告,最后给领导去解释出现的问题。
    总结:
    1)领导的管理是重要的,要能得到机会和指导;
    2)自己的主动也是主要的,要适当的表现自己的能力,给领导信心;
    3)抓住机会锻炼自己,多去请教领导,多交流;
    4)锻炼自己的管理能力。

    选择
    工作两年后我第一次面临选择,一是继续跟原来的一帮同事去做不同的工作,二是离开原来的同事,做现在的工作!我选择了留下,(也是因为在我工作的地方另外一个公司挖我过去同事还有两个同事),我的理由是:留下我可以成为技术骨干,我自信自己有能力独立工作,并且可以带领一个测试组完成需要的工作!因为在原来的公司的话永远都在几个老师的安排和领导下进行工作,对自己的管理能力的培养和独立工作的能力的培养都不会有多大进步,所有我选择了留下,离开原来的那些老师们。
    总结
    敢于选择自己的路;
    要有意识的培养自己的管理能力;
    抓住时机,该走就走。
    编外话:我们原来公司的同事后来都去了公安部,好几个都是督察,跟我同时进公司的一个同时现在也是三级警司;但是我没有后悔,自己选择的路就要自己去走,虽然之后的一年让我很郁闷,但是终于现在好了!

    坎坷
    真的自己独立工作了,让别人认为是技术骨干的时候,才知道好难,以前一直向往这种被别人认可的位置,可是真正到了这个地位才知道要比原来累的多;所有技术的问题要自己搞定,然后向自己的上头汇报,以前做事大部分是半成品,然后有主管技术的头修改后汇报,现在都需要自己一个人完成。(可能不同地方的公司也不一样,我们这里就是这个样子了),偏偏刚刚被挖过来,碰到一个即不怎么懂技术,又不怎么懂管理的领导,郁闷呀;
      本来风风火火想到这个部门干一番事情,可事与愿违,主要原因:一,自己没有调整好心态,太过于自信,这个直接导致我的第一个重要项目的测试方案破产,二是:部门头头管理方式不当,不能按照我推行的方式进行管理,导致整个测试项目严重延期。不幸的是我也从超自信变成不自信,然后我的头又给了我一再的泼凉水,后来干脆不管理,作好自己的事,拿自己的工资就得了,反正你开不了我。这样也不知道经过了几个月我一直在阴影中。
      煎熬(也许可以用这个词)了一段时间后我干脆去跟另外一个部门头去做另外一个项目(惹不起我躲还不行吗?),谁知道躲也躲不了,在做这个项目的时候,其中一个子项目又让我们部门头郁闷了一把,差点就要把我开掉了,还好我有我们副主任撑腰。总算熬过去了。
      这将近快一年半的时间,历经坎坷,我都快被压跨了,当时真的怀疑自己的选择是否正确,我坚持我坚持,相信我不会总这么背,我相信自己是块金子总要发光的.................
    总结
    即使被挖过去的也不要过于自信,太过露底对自己的发展不利(这是我一个朋友跟我说的);
    跟领导打交道要有一定的方法,见人说人话见鬼说鬼话,要学会随机应变(保证工作做到位);
    要推行自己的想法,一定要看准领导,如果领导实在没有能力,又不太能接受别人的意见,那就随他去吧,或者干脆跳槽!
    调整好心态,面对挫折,努力把做不好的事情做好!
    对技术一定要认认真真,做到一丝不苟。

    这一节是讲述的是迎接我的“曙光”

    曙光
    山穷水尽疑无路,柳暗花明又一村,人不会总是幸运也不会总是坎坷,只要你还在努力还在奋斗,曙光就在前方。
      经过快一年半的坎坷工作经历,也锻炼了我的抗压能力和对事情的承受能力,造物主是公平的,在给你磨难的同时也给了你坚强,在去年的六月分终于迎来了我的曙光,实验室体制改革,合并综合部和质量部,改组测试部,测试部有原来的一个部门分为2个部门,我被分到了测试一部,部门头是一位很绅士的博士,在测试上有六年的管理经验,我跟他合作过几年,同时他很能听取测试人员的建议,并且会根据自己的判断实施。
      我很幸运到了一部,然后我实施我的计划,第一步:这个工作模式改革,培养中层,带动底层,团结合作的工作模式,听起来很多公司或者单位都在提,但是我在当时的部门就是实施不下去,那个领导不知道怎么扶持中层,导致每个人都是独立的,没有达到合作的目的。第二步:组织培训,与自我培训,开展部门内部的测试技术培训工作;这项工作也没有什么稀奇可能大家都有过这样的机会,但真正的要让领导去重视是不容易的,前一个领导就是做了一个形式主义,他不反对也不支持(好像是他不知道怎么支持)。所以我,要做就要做到,有计划有目的有安排的实施培训,这样有几点好处;一是可以增强部门整体的技术能力,二是可以锻炼部门内部的交流能力(在我们测试人员来说交流是很重要的);三是能提高部门人员的表达那能力等等。
      第三步:推行测试技术研究工作,这项过做主要是在工作不是很繁忙的时候,组织力量研究测试相关技术或者行业相关技术,做到测试技术的不落后。其实这个事情大家也都想过,但是要真正的做也不是那么容易,这种要形成一种氛围,如果只有一两个人研究或者得不到领导的重视,在部门内部是实施不起来的,个人研究也会不断受到阻碍。
      第四步:推行部门三大体系;质量体系、管理体系和技术体系。质量体系,我们来说主要是依据实验室质量手册,严格执行,在执行中进行改进。管理体系,主要是推广向上负责的体系,做到每个项目都要有人负责,相互合作。周例会制度,(周会可能每个部门都开,但是要起到会议的作用就需要领导多花些心思了)。技术体系,主要是积累测试技术,极其相关研究技术,这个分类就比较多了,比如软件测试技术,硬件测试技术,测试工具使用,测试仪表使用,网络知识,安全知识,编程知识,数据库等等,主要是对相关知识进行积累和总结作成整个的一套体系。
      想法是好的做起来是难的,更难的是要让你的领导接受你的想法,在部门成立的第一次会议中,我向领导提出固定测试组,培养中层的想法,没想到领导跟我想到一块去了,他很支持,但是在会上没有直接表态,领导毕竟是领导,有他自己的想法。(会后才知道他要摸一下底),接下来很顺利就制定了这个制度。
      后面的几个想法我逐一找领导谈了,我们都是不谋而合(我是幸运的),到现在为止上面说的四项内容都在开展,培养扶持了中层,培训了下层;组织了培训而其非常有计划,有安排。领导每次都去听我们讲课,还很认真(感动呀!),技术研究方面,我们在去年年底做完A项目后就开始对现行比较热门的VM技术进行研究,还要写一本书,第四步的内容,质量体系在实施,管理体系也开始了,技术体系总结相关的还没有做起来,但是领导很重视。再次感动ing… …
        古人云:为知己者死,虽然我不能死,但是我也会为有这样的领导而感到骄傲,我会进自己最大的努力作好工作。
        总结:主要是遇到一个好领导,可遇不可求,但是还是要说一下:要注意跟领导的交流方式,领导也很要面子的,所以有些想法最好单独跟他谈,在推行的时候让领导去推,不要多说话,这些都是我的想法,其实领导很多时候比你想的要全面!
        好了我的个人测试经写完了,可能有些朋友看了没有什么收获觉得还不如写写测试中遇到的问题,或者测试技术什么的,不过我觉得做测试首先要学会做人处事,如果这两样都做不好,什么样的工作都做不好,上面所说的是我的一些亲身经历,整理出来给大家一个小小的指导吧(也许没有什么指导,那你就当看自传了)总之一句话,做好人,做好事,才能做好测试。

我的栏目

我的存档

数据统计

  • 访问量: 3959
  • 日志数: 7
  • 建立时间: 2007-04-04
  • 更新时间: 2007-04-11

RSS订阅

Open Toolbar