发布新日志

  • 常用WEB应用服务器安装与部署手册(BSTT整理)

    liaoxj 发布于 2011-10-14 10:48:46

    其内容包含:tomcat、WebLogic、WebSphere、金蝶中间件Apusic的部署与安装。感谢BSTT成员杭州-熊熊的分享
  • 面试总结

    bob123654 发布于 2012-02-25 16:12:35

                             面试总结

    在群里碰到各钟各样的测试人员,有的是刚加入群的未毕业的大学生,有的是已经入职很久的老手,有的是测试届的前辈。未毕业的学生总会问我可以做什么工作,其实对于这个问题我想回答他,世间对自己了解最深刻的人莫过于自己罢了。我们首先应该弄清楚,我有什么优势,我的优势在什么地方,我的缺点在什么地方,在校期间可以加以改正,这样子取长补短终会成就一番事业。在职人员如果还问我可以做什么工作的问题,我觉得他这几年的工作已经白做了,因为他们始终没有找到自己的方向,不知道自己的定位是什么。

    拿本人自己举例,我有CET-4CET-6Toeic,职业英语中级职称,软件设计师中级职称等证书,还有学校发的大大小小的证书大概有20个左右。我可以从事软件开发,软件测试,英语翻译,HR等相关工作,从2010年春节过后我也收到过软件测试,本地化翻译工程师,HR等相关offer。我不是在这里吹嘘自己多牛,只是想说明一点,大学只是一个通识教育,它只会为你未来的工作奠定一个基础而已,完全可以在这个基础之上努力找到一份自己满意的工作。

    论找一份工作而言,首选应该搞清楚自己喜欢做什么样的工作,然后再考虑一下自己的优势,以及社会对这样的工作的认可程度。比如我喜欢做测试方面的工作,我本身也是计算机科学与技术专业毕业,有一定的基础,这样子做这份工作的话难度不大。如果非计算机专业的学生想要做测试工作的话也可以的,基本是通过培训这条道路的,当然不排除一些天资聪明的人可以自学成才。如果自己对公司不太感兴趣完全是为了生存下去,那么这样子的工作做的太久也不可能有什么新的进展。社会、公司对工作的认可程度决定着你拿到薪水的高低。

     就目前的形式而言,测试方向的薪水在北上广这些地方还是很有优势的,内陆城市对测试的需求量也很少,重视测试的公司屈指可数,薪水当然不会和北上广这些城市在一个档次。

     工作地点选择好之后就是考虑去哪个公司的问题了,公司性质不同,公司规模不同,挑选的余地也很多。可以进国企做测试的员工少之甚少,一般大家都在一些合资,民营,外资企业上班。大公司对测试的重视程度相对会高掉,流程的规范性会制约你的工作范围,你只可能是在一个工作方向上工作。中小公司由于流程不是太过正规,你可能做的事情会很多,容易锻炼人,也比较辛苦。

    另外公司还有外包和正式职位的选择区分,一般没有工作经验的朋友可以选择一些外包公司锻炼一下,积累一下工作经验。正式工作一般很少会有没有工作经验的朋友,除非公司愿意培养新人。对于同一个职位,外包职位给的offer会被正式员工多500-1000元,这个是正常情况。外包工作也有它自身的弊端,例如外包工作不稳定,可能在项目结束后裁人,或者外包没有归属感等问题。正式由于这个原因我离开了现在的公司,转去新东家上班。

    工作方向上面有人喜欢走技术路线,有人喜欢做管理路线,这个要看个人爱好。做技术路线可以朝着高级测试工程师,测试架构师方向发展;管理路线可以朝着项目经理,产品经理方向发展。

    在工作中可能会有一些跳槽的打算,这个要抓好时机。大家说的“金三银四”指的是34月份过完春节后会容易找工作的,因为这个阶段公司一般都把年终奖发了,等待年终奖之后离职的人员就会有所行动的,这样自然而然的会有职位空缺。另外3月份时候公司会调整薪资待遇的,这个时候入职还是比较恰当的时候。

    一般找工作的流程是投简历-公司筛选简历-通知笔试-面试-HR谈薪资-录用这个过程。

    简历是至关重要的一步,如果你的简历没有被公司筛选上,上面的其余流程直接终止。

    推荐大家去的招聘网站:智联招聘,前程无忧,中华英才,应届毕业生多去应届生求职网http://www.yingjiesheng.com/)这个网站去看看。不建议大家去58同城,百姓网这些非专业招聘网站上去找工作,以免上当受骗。简历要注意描述工作经验,项目经验清晰,无歧义,无错别字。不要夸大其词,中英文简历最好都写一下,然后应聘职位的时候一同投递出去。简历中应该包含你所做工作的关键字,如程序员会写熟悉JavaCC++,标准库等,测试员会写熟悉黑盒,白盒测试,LoadRunner等这些字段,因为这些字段可以作为公司人事筛选简历的一个关键查询字,如果你的简历中没有包含这些关键字的话,很可能就被筛选掉了,没有面试机会。建议大家再写一份中英文简历用doc格式保存好,如果通过邮箱发送简历的话,可以把这份简历发送出去,不建议大家直接把招聘网站上的简历通过邮件发送给招聘方,因为招聘网站上的简历往往很长,需要3页左右。自己准备的简历可以突出重点,另外不建议使用简历模版,这样看着比较像没经验的工作人员。简历要突出重点,一般应该不超过2页纸。对一份工作而言,跟工作内容无关的经验就不要写了。一个HR对待一份简历的时间大约不会超过1分钟的。

    接到公司面试电话后应该电话沟通顺畅,有礼貌。一般情况下我会请打电话约我面试的人员给我邮箱发送一份email,这封email会包含面试公司名称,面试地点,面试时间,甚至有些细心的公司还会把职位招聘要求附在邮件里边,对于发email的要求一般公司都会接受的,收到email及时回复一下,即使不准备参加面试了,也要回复一下email说明一下不去参加面试的原因,请对方取消面试安排等。另外建议大家准备一个小笔记本,把面试的时间安排记录一下,这样子下一家面试电话打过来可以知道自己什么时间有空余时间可以参加面试,以免在同一天的同一时间安排2家面试,时间上会有冲突。

    去参加笔试的时候请带上自己的几份简历(大约一个职位2份简历),黑色签字笔,证书复印件,毕业证,学位证复印件,演草纸,以及其他相关证件等。面试的时间最好不要迟到,可以早到,迟到对公司显得不重视,缺乏应有的尊重。测试的笔试试题一般考察测试理论,数据库操作,网络知识,linux系统,基本编程能力等。参加面试的时候着装要合适,IT面试不用穿正式的西装,套装去,不过这个要看公司的性质,一般的民营性质的公司不看重这些的,外企可能对着装要求高点。头发不要搞的像几天没洗一样子,给人一个很清爽的仪表很重要,一般对于面试而言大概前10秒中就可以通过一个人的穿着,衣饰,气质等判断出这个人是否适合这个职位。

    笔试结束之后有的一般公司会在大约20分钟后和你有一个简短的面试时间,一般是你的直属领导第一面,然后是技术总监面或者项目经理,然后是HR面。如果20分钟后通知你公司会下次预约你面试,这个面试一般就失败了。很可能是笔试题目做的不太理想,公司领导认为没有参加面试的机会了。直属领导一般会问你很多详细的工作经验相关的问题,这个要如实回答,知道多少就答多多少,不要夸夸而谈。面试中有几个问题不知道回答是正常现象,不要太紧张。面试过程中请关闭手机或者将手机调整为震动状态,以免的过程中有其他公司约你参加面试。其他公司可以在你面试结束后再回电话约时间。安心做好本次面试的事情。面试过程中不要咄咄逼人,一定要争取压倒面试官一样子,也不要搞的直属领导像欠你钱一样子的脸色,我相信没人会愿意和这样的人做同事的。要自信,微笑的回答面试官的提问。第二次技术总监的面试大概会问一些技术问题,还有对公司的了解程度,这个需要大家在参加面试之前百度一下,或者在公司主页查看一下公司的相关业务已经基本信息。

    直属领导和技术总监或者项目经理面试结束之后过一段时间后会有HR来面试问一些个人的基本情况,以及对工作的热情程度,最重要的是和你谈薪水。有的公司会把HR面试放在电话里边进行谈薪水,也会有一些公司会在笔试之后直接是HR谈薪水的。在HR面试谈薪水的时候自己心里边要有一个期望值,还有一个波动范围,如我这次找工作的期望值是7500,波动范围是+-500,如果这个谈的可以的话,在心理承受范围内就可以接受这个offer。    

     关于期望值可以从一下几个方面把握:整个行业的形式,其他熟悉同事的薪水了解,向和自己关系好的猎头咨询和自己工作经验相仿的人可以拿到多少薪水等方面了解一下。和HR谈薪水不要要的太少了,以免自己跳槽吃亏,也不要太多了,这个容易谈崩。具体情况需要大家自己揣摩和HR的对话。 

    还有面试过程中提到的所有问题并不是面试者一定全要回答的,比如如有有人问你有没有女朋友,和女朋友为什么分手这样的问题,完全是私人问题,有礼貌的拒绝就可以了,不要随便什么事情都说。   

    对一个公司的真实情况的了解可以从你进入公司参加笔试就可以开始,例如前台的接待是否恰当,面试试题的质量以及纸张是否正规,技术面试和HR面试问的问题是否专业,公司的办公环境是不是很吵闹等。

    拿一个面试试题作为例子,如果你拿到的面试试题字迹清除,排版合理,答题位置空间合理等这样的公司说明对面试还是比较重视的,比较正规。我也曾经见过一些公司的面试题目是在一张A4纸张上打印出10道面试题,没有专用的答题纸,直接作答,这样的公司即使给我offer也不会去的,因为从一件小事就可以看出公司会给你多少薪水。还有的公司给的面试题背面竟然是广告宣传单,我很无语。虽然很节省纸张,但是参加笔试的人员没有得到足够的尊重,纸张都这么节俭的公司给你的薪水也会很节俭的,这个毋庸置疑。其实找工作有的时候也要靠运气,这个也是一个因素罢了。

    最后祝大家都可以找到一份理想的工作,受飞燕儿之托写下这篇文章,纯属个人见解,如有错误敬请拍砖。

     

                                                                                                           南柯一梦

                                                                                                          2012225

     
  • 今天面试的两三事

    丢了朵朵 发布于 2011-08-04 20:24:37

        刚肚子好疼,不知道是不是中午没有吃饭的缘故。看到腾讯新闻上的“长沙男子开车撞人泄愤致5死5伤”的新闻,即便判了死刑也并不能挽救什么,这个社会究竟是怎么了?生下来,不容易,活着,也很容易了,平安的活着竟然成为一种奢望。

        昨天把简历公开了,中英文简历都修改好了,投了八家公司,都是比较期望的公司。刚投过去,下午就接到其中两家公司的面试电话,第一家的民营企业,总部在珠海,不过广州有分公司,安排在上午九点面试。第二家是外企,总部在德国,下午两点面试。收到他们的邮件后,我一一回复,并进行相关证书和简历的准备。

        后来还接到深圳一家外包公司的电话,HR跟我聊了半个多小时,简单的了解了一下我的情况,也介绍了他们公司的情况,需要外派到广州汇丰银行,这个项目组一共有200多个人。并且谈了薪资,她说可能跟我期望的有所差距,但6.5K是没有问题的,其他的福利待遇都有。我对外包公司兴趣不大,所以婉言拒绝了。

        今天上午7点就出门了,一路转车、倒地铁到第一家公司参加面试。

        面试的流程大致是:

        首先,前台让我填了我的基本信息表,然后给了两份试卷给我,一份是EQ测试,另一份是软件测试试卷。EQ测试就不说了,软件测试试题包括五大题,第一道是判断题,对一些软件理论进行判断;第二道是单项选择题,第三道是多项选择题,第四道是简答题,最后是英翻中两段话。难度不算太大,答得还可以。

        后来测试部主管(孕妈妈)给我进行第一面,她很和蔼,她先让我做了自我介绍,然后问了我测试专业知识方面的问题和一些综合性的问题,期间也有比较麻烦的问题,比如说我之前的工作参与了项目的好几个阶段,而现在我专门做测试有什么优势?我们聊得很愉快,她说了好几次,我非常满意你今天的表现,然后我问了几个关于公司测试部门和产品的一些问题。。。。。

        最后,人事给我进行了第二面,其实主要是谈薪资,她把公司的福利待遇都给我介绍了一遍,然后说可能跟我期望的有所差距,我没有直接拒绝,她让我回去等OFFER。上午的面试就这样结束了,出来的时候已经11点半了。

        直接赶到下午面试的公司,今天做了一件明智的事情和一件不明智的事情,明智的是我早上出门买了个起司,不明智的是,我没有吃中饭就去了德国这家公司面试,那里是国际软件开发产业基地,狗不拉屎的地方,我没找到快餐店,连个超市都没看到。通知的是2点面试,我1点半上去的,一进去就被吓到了,好大的办公室,里面至少有好几百个人。前台给了我一份基本信息表和笔试题,这套笔试题比上午的要难度更大。题型有选择题、填空题、简答题和设计题,填空和设计我答得不是很顺利,考了一些技术方面的,但是还是瞎编乱凑的完成了。

        完了人事带了一个男的(后来知道是研发部的技术人员)给我面试,他先让我做自我介绍,然后就开始问技术方面的问题,问得深入了,什么权限,访问点,资源。。。问了一大堆,幸好我还能一一对付,不会的就瞎说,还问我人生中有没有什么缺陷导致我的职业发展停滞不前?一些很奇怪的问题。

        半小时后,他拿着我的简历去找人事,算是一面通过了。第二面由人事部经理给我面试,又让我自我介绍了一遍,然后问了我之前工作的流程还有优势什么的,遇到问题怎么解决啊之类的,差不多了,她突然用英语冒出一句“please introduce to yourself!”,我当时懵了一下,不过马上缓过来了,还好事先有准备,我流利地用英语介绍了自己,然后她继续用英语问了我一些问题,比如说在一次会议上,你的上司犯了一个错误,你会怎么处理?你这两年工作的收获?你怎么处理和同事之间的关系,这些都比较简单,我觉得回答得很顺畅,就是有一个问题,“严重性”我一时想不到英语怎么说,不过漂亮的人事经理提示了我。用英语大概交流了二十多分钟,然后她转中文了,给我介绍了公司的产品,在德国的情况,采用的技术,还很详细的跟我说了公司的福利(五个工作日,8小时/天,五险一金,一年两次提薪,班车免费接送),除此之外,公司还提供两名英语培训讲师,专职培训员工英语,健身计划。。。诸如此类,我比较满意,如果有可能的,我也愿意去降低一些期望的薪资。

        最后一面是由研发部主管给我面试,我发现职位越高的人越和蔼,主管没有问我什么专业性的问题,倒是问了比较多综合性的问题,还问了我一个很苛刻的问题,他说如果公司就只有我和另一个开发人员讨论一个鼠标的标记颜色,双方意见不统一,开发人员故意找茬,就是不同意我的方案。项目经理在出差(期间不能打电话给项目经验),公司就你们两个,没有第三者,你会如何处理?我从立场、如何去跟开发人员沟通方向回答。主管也说这个问题很苛刻,但确实会发生在实际工作中。

        三面结束,HR说一周内会发OFFER,出来的时候已经4点多了。两场面试下来,身心疲惫。回来的路上,接到一家猎头公司的面试公司,明天上午继续。。。

        我把今天笔试遇到的不会答得问题列出来,及时巩固,希望下次可以对答如流。

        1、测试方法有哪些?

        2、设计测试用例的方法有哪些,分别在什么情况下会使用这些设计方法?

        3、面向过程的集成策略包括哪些?

        4、性能测试的步骤和目的。

        5、回归测试要注意哪些问题?

        6、用等价类划分的方法设计三角形计算的测试用例。

        7、用因果图法编写字符*或&输入的用例。

        8、CMM成熟度包括几个等级,分别是?

        9、如何跟踪bug的生命周期?

        10、QTP和Loadrunner的基本原理和操作过程。

  • Jack点评转载的《我的测试秘密和技术》

    架构师Jack 发布于 2010-08-10 21:52:35

     

    今天在51testing看到一篇转载的文章,很有共鸣。为此结合我的经历和体会,对文中的一些观点点评一把,给大家分享:

    “最近受邀请要给微软的一个团队讲解我个人的一些测试小秘密和常用的测试技术。其实,测试没有什么太多的秘密可言。如果说如何能发现更多的bug的话,那么我认为最最重要的是passion和experience. 但是,由于他们期望听到的是测试的techniques,我就列了一个我认为最重要的几个方面。现在发出来和大家共享一下吧。

    ——Jack点评:我也认为激情和经验最重要。同样的测试思想和方法好比不同的武器,给不同经验和心态的工程师绝对效果是不一样的。测试管理者们不要指望用工厂生产管理的方式用机器代替人,所有工作都通过工具把对人的依赖弱化掉。测试工程师怎么说也还是知识工作者,不是富士康的操作工。从未听说过设计工作被自动化,实现工作被自动化倒是可行的。类比现在有工具可以自动生成代码,自动生成自动化测试脚本,测试用例,但是这些工具的输入还是由设计者经过人脑分析设计而产生的。

      ·         Passion, Experience

      我觉得experience和passion最重要。有一个周六的半夜我突然有种想法应该给我测试的feature去做code review,就去了office一直工作到5:00am, 结果就发现了两个security bug. 之所以能有这个idea就是因为经验的积累造成,而能在周末凌晨工作几个小时则是因为passion. 我现在完全地享受能发现各种各样bug的生活了,已经对开发没有什么兴趣了。破坏软件真的是很有趣。

      ·         Understand features deeply

      o   Design

      o   Architecture

      o   Implementation

      o   Customer requirements

      理解这些非常的重要。你理解的越深,你就可能发现更多,更好的bug。

    ——Jack点评:我所做过的每一个项目都会深入学习和理解该项目的design、Architecture、Customer requirement,这是我这么多年来做测试的习惯。所以说完全黑盒的测试是不存在的,做好系统测试可以不看代码(时间成本很高,老板不高兴),但一定要和开发人员一样了解design、Architecture、Customer requirement。并且只有你能在这3类文档中发现了其中的缺陷,才能说明你真正的看懂了,并可基于这些资料开始测试用例的系统分析和设计。我甚至认为做一个合格的测试分析和设计人员是必须具备快速学习和理解项目design、Architecture、Customer requirement的能力的。

      ·         Tools

      o   App verifier

      o   Driver verifier

      o   Fuzzing tools

      o   Etc.

      Some tools are extremely useful. Some tools are very helpful. 很多人不理解我为什么每天都能发现一两个蓝屏的bug,其实90%的应该归功于这些tools。但是,虽然几乎微软每个人都知道这些tools,但真正经常使用的并不多。我发现一个有趣的问题,绝大多数我发现的bug并不需要特别的技术,而决定于态度。是一个你有没有去测的问题,只要去测,细心去测都能发现他们。

    ——Jack点评:对测试工程师来说用好工具胜过自行开发工具(这是在做开发,而非测试),开发工具是有很大的成本的。当你是一个有丰富测试经验的工程师时,我更希望你能发挥测试的特长,而不是放弃特有的测试经历转向开发重新开始。当然如果你认为你的测试用例集已足够完善和完美,有无事可做那么你可以去写写工具玩,否则的话应将测试工具的开发交由专门的开发人员来实现。

      ·         Code review+Debugging

      o   Security audit: buffer overflow, memory leak, AV

      o   Logic review

      Debugging 的技术非常非常重要,这是开发和测试的一个主要技术交集。就在我做完这个经验介绍以后,其他的feature里发现一个bug,他们怀疑是我们的 feature造成的。我出面跟他们的开发和开发组长进行交涉,最后给他们指出他们的代码里问题的所在。Code review和debugging是相辅相成的,不可分割。我一般进行两种code review。一种叫code audit, 不关心代码的逻辑,功能,只是检查有没有buffer overflow, memory leak, AV 等等。一种是logic review, 专门检查代码的逻辑是否合理。Code review是个bug farm, 熟悉之后你能发现大量的bug在里面。

    ——Jack点评:非常高兴最近我正在实践的代码检视方法与文中的一样:如果时间资源少,先只做code audit(关注内存泄漏,资源泄漏,错误的指针内存使用,字符串缓冲区溢出,数组应用错误等);只有时间资源多时,才考虑logic review(一直没有时间来开展。) code review可以在测试设计开始之前做,能帮助你对系统实现了解更多,有更多可编写测试用例的场景输入;也可以在所有用例测试完成后来做,对基于场景的测试分析进行补充,毕竟无人能100%的覆盖所有的可能问题场景,通过code review也是一种补充方法。不过,需要强调的是:code review能发现代码编写的错误,却很难发现设计流程的错误(因为你已陷到细节的纠缠中去了,很难再从全局考虑设计了)

      ·         Tenet tests:

      o   Reliability: tools, stress

      o   Security: fuzzing, code audit

      o   Performance: Xperf

      大家一般更多的关注与functional test。其实Reliability, Security和Performance测试都非常重要。每一个测试人员都应该具备进行这几方面测试的能力,从而给自己负责的feature经常性的,或者通过Lab进行这些测试,肯定能发现很多bug,这些一般都是非常好的bug。

    ——Jack点评:压力测试和可靠性测试做的不充分,不精耕细作的项目,绝对质量是不过关的,无论测试报告能多么匹配你公司内部的质量出口标准,只要产品大规模上市应用后,你就会吃到这个苦头的。我甚至认为压力测试和可靠性测试是充分暴露产品bug的重型武器,功能测试用例只是步兵的随身武器。一直以来我每一年都会帮某些项目设计压力测试方案(用例)或可靠性测试用例,每做一个项目,我都能在这些专项测试的测试分析和设计质量上更进一步。

      ·         Integration test

      大多数人只关心自己的component。其实很多bug发生在集成测试上。你需要学习其他相关的component, 从而能够想象很多cross feature的scenario进行测试,也能发现很多bug。

    ——Jack点评:通常我在给项目组补充测试用例设计时,很多都是补充的这类用例。因为经验稍少的人难免会对被测系统内部的对象理解的过于孤立,即使有时进行了正交穷举法也未必能考虑齐全。要做好集成测试的设计,需要测试分析设计人员具备快速进行宽度知识学习和深度知识学习的合理平衡。不过于钻牛角尖,又不过泛导致只能搞穷举正交。

      ·         Looking for test holes

      o   Test cases

      o   Test tools

      o   Test owner history

      o   Old bugs analysis

      我在有时间的时候我会通过这几方面去寻找更多的bug。看看有没有没有cover的test case, 看看有没有新的test tool可以尝试,跟别人聊天看看自己component以前test owner的情况,以及分析一下最近发生的一些bug。同一个bug有没有可能出现在其他地方。

    版权声明:本文出自flysky19的51Testing软件测试博客,欢迎转载……”

  • loadrunner9.5下载、安装、破解与使用

    Smile_day 发布于 2010-03-01 13:26:07

    1.loadrunner9.5软件下载:
    HP官网:(需要注册网站用户)
    用户名:testing_account@tom.com 密码:wuye123.
    Download File Size Link
    Software, LoadRunner 9.50 Win 1,701 MB T7177-15008.zip
    Software,LoadRunner 9.50 UNIX/Linux 341 MB T7177-15009.iso
    Letter, LR 9.50, T7177-62006 0 MB T7177-88005.pdf
    Letter, Welcome HP Diag 8.00 SW Media 0 MB T8352-88006.pdf
     
    附加:
    加载.iso文件工具:daemon4304-lite:
    http://download.csdn.net/down/1247612/muwei0516
    加载镜像前,先请参数设置_集成_文件关联_勾选ISO文件.
    2.loadrunner9.5安装(图解):
    3.loadrunner9.5破解:
    4.loadrunner9.5破解文件:
    5.51Testing系列丛书:性能测试进阶指南——LoadRunner 9.1实战:
  • 通过日期控件录入日期问题

    sidneylover 发布于 2007-04-17 16:26:29

    通过日期控件选择日期,很多情况无法录入所选择的日期,导致回放失败,可以用下面的方法处理

    先把显示日期的文本框添加到对象库,假设是WebEdit类型的文本框sdate,对象整体路径:browser().page()...WebEdit("sdate")可做如下操作
    sd = browser().page()...WebEdit("sdate").object
    object.value = "2007-01-03"  也可直接赋值 browser().page()...WebEdit("sdate").object.value = "2007-01-03",输入正确日期格式的日期,再回放时就能正确显示所设置的日期了

  • 软件测试职业发展---写得非常好的文章【转载】

    summertears 发布于 2011-05-22 16:44:58

     
     
                    软件测试职业发展---写的非常好的文章
     
    天地玄黄,宇宙洪荒;所谓光阴似箭,因为一转眼滚滚的历史车轮就将人类文明推进了二十一世纪的信息时代!葛大爷有对白曰:“二十一世纪最宝贵的是什么?”对曰:“人才!”何为人才?sincky曰:“适应时代潮流,把握社会需求,并为我中华老大帝国创造社会价值的人!”哎哟,不诹了,其实今天笔者在这里要和大家探讨的,是软件测试的职业发展问题,重点要阐述的是软件测试从业者的职业发展方向,欢迎大家按enter键换行,继续浏览!
      一个人从大学毕业,即开始发生从学生时代向职业人士的过渡,这种过渡走的好,可以实现毕生宿愿,体现个人价值,不管你是否喜欢,功名、利禄尽收眼底;如果走的不好,则会误入歧途,纵有凌云壮志、万丈豪情,难免一生郁郁不得志,终归化作片片飞尘,无语对穹苍!那么如何才能顺利的完成这种过渡、踏上我们豪迈的职业旅程呢?答曰:认清自己,选择适途!战国的魏人荆轲具有“十步杀一人,千里不留行”的本领,曾向魏王献策曰:“国君,我是职业杀手,我杀人的技术很强!”魏王问:“那么你想杀谁呢?”对曰:“杀他个国君如何?”魏王大惊,慌然离去!后来荆轲离开魏国,与燕太子丹密谋,留下了“图穷匕首见”、“荆轲刺秦王”的千古佳话。荆轲,良禽也,择木而栖和太子丹合作,是他的高明之处;不过笔者认为他是一个典型的“低管理、高技能”的人才,当他紧握嬴政的脖领、持剑相逼时,他太得意忘性了,可见他没有领导的“统御力”和“决断力”,所以落了个刺杀失败、拔剑自刎的下场,虽然他的侠义与胆识流畅千古,但是终究是个“杀手”而已;当今社会下,如果“低管理、高技能”的人干工作干到丢了性命,那也真是一个笑谈了!
      目前我们国家高等学历大幅度扩招,造成社会的低端人才严重过剩,大学生毕业找不到工作、或者找不到合适的工作例子鳞次栉比;但是社会各行各业对高端人才的需求又求贤若渴;那么如何解决这种矛盾呢?从大环境来说,国家应该改革教育体制、提高教学质量、重视高端人才的培养,但是,一个问题一旦上升到国家的层次,就要等它个十年八年!我们没有办法改变世界,但是我们有能力改变自己;所以我们从个人的角度来讲,讲讲我们这些软件测试的从业者们,如何“认清自己、选择适途!”
       纵观当今社会各行各业,对于个人的职业发展方向,从宏观上都可以划分为四个群体,即:
       “低管理、低技能”
       “高管理、低技能”
       “低管理、高技能”
       “高管理、高技能”
      告别了象牙塔,带着对校园生活里那段风花雪月的追忆,年轻的毕业生们走上了社会;这时候的年轻人,大多数是属于“低管理、低技能”的群体,我们没有工作经验,不知道企业的工作流程,不清楚各个职业的工作技能,更不具备任何行业的管理能力;然而值得庆幸的是,人类问明发展到现在所出现的众多行业,都已经有了众多可以参考的群体,这些群体就理所当然的成了我们可以借鉴的发展方向!虽然我们的起点都是一个,但是可以选择的发展方向却是丰富多样!
      高管理-低技能,即是我们通常所说的管理路线!在IT业,这个方向的成功者不乏项目经理、项目总监直至企业的最高管理层;但是走这个方向也要有技术方面的积累,因为管理者的影响力中,除了职位赋予的权力以外,还包括个人人格方面的能力和专业领域的专业能力,而后者就是技术水平!而计算机行业本身,也决定了技术底蕴对职业发展的重要影响,所以年轻的IT朋友们,如果想为自己的职业人生设计成这个路线,除了适当的技术积累外,更要有意识的锻炼自己的管理素质。
    低管理-高技能,即通常所说的技术路线!IT业以技术为主导,对于喜欢钻研技术、探讨技术的人,可以选择该条路线,走的深入、走的彻底!只因中国对于技术与管理的认识不同,造成很多人认为做技术不赚钱、不被重视,自身误以为不过是个工程师而已,所做事情只是辅助企业的运作。实际上,在欧美发达国家,资深技术人员的薪资非常高,从业时间的周期也相当长,在Microsoft、IBM等巨头企业,不乏年龄在50岁以上的资深程序员或系统架构师,而其薪资也和高级管理者一样高!而另外一个不争的事实是,企业对于管理的职位是有限的,并且一些优秀的技术人员不愿做管理,或者不适合做管理,因此社会上出现的资深技术专家(或者类似职位),为喜好技术的从业人员提供向上的通道。
      高管理-高技能,即咨询方向是较为均衡、全面的路线,也是众多企业希望员工努力的方向。然而有调查结果显示,由于现实种种因素的制约,大约90%的个人是分别沿着管理方向或者专家方向发展的,真正实现在咨询方向达到一定的高度的人少之又少,而且在这为数不多的咨询方向达到又一定高度的人才,往往又会由于企业资源的限制无法将个人价值完全发挥而最终离开所在企业,成为专业培训师、咨询师;一些国际知名的咨询公司如麦肯锡、安达信乃至毕博或其他,可谓大家在个人职业生涯到达一定阶段,作为自己继续突破职业瓶颈的发展路线。
    那么,对于软件测试的从业者,我们的出路在哪里?我们的职业发展该如何设计?我们的发展方向又有哪些呢?这里笔者和大多数测试同行意识相同,笔者也曾在多篇文章里标明,中国的软件测试行业尚属起步阶段,其发展的步履上布满了荆棘与泥泞;然而其发展速度可谓惊人的,从笔者刚毕业时候对软件测试的“0”概念、从业同行者寥寥无几,到最近2年的各大媒体纷纷报道的中国软件测试人才缺口20万、软件测试工程师将成为未来10年最紧缺的人才之一、包括笔者所接触的众多国内外优秀企业对高端测试人才年薪10万、15万、20万的招聘需求……可见,选择软件测试这个朝阳行业的朋友,做了一个比较正确的选择!然而,如何任何事物总有它的两面性和矛盾性:2006年初在北京、上海、深圳举办的几次春季大型招聘会上,多家企业纷纷打出各类高薪招聘软件测试人员的海报,出人意料的是,收到的简历尚不足招聘岗位数的50%,而合格的竟不足30%……引起我们思考的是,我们的软件测试从业人员还有很大一部分不满足当今社会的需求;而另一层含义是,我们还有很大的提升空间!因此解决该矛盾的突破点是:每个人在这个行业里找到自己的发展方向,规划自己的职业蓝图,从而有针对性的锻炼自己的职业技能,增加个人的职业砝码!
    软件测试职业发展方向,大体上与上述的通用职业发展路线图相吻合,也可以分为管理路线、技术路线、管理+技术路线;只是针对该行业本身,有其特殊性和细致性。其图示如同两个重叠的”V”字样,我们为其命名为“双V模型”;该模型适用于大多数行业性软件测试从业人员,一些特殊领域如游戏测试、嵌入式测试、硬件测试,也可作为参考。本文是三部曲之一,只介绍职业发展方向定义,在下一曲会介绍各个职业方向应该具备的知识与技能体系!
      双V的底点是测试工程师,属于软件测试职业生涯的初级域,其适用范围是入行软件测试3年内的常规测试从业者,其主要工作内容是按照测试主管(即直接上司)分配的任务计划,编写测试用例、执行测试用例、提交软件缺陷,包括提交阶段性测试报告、参与阶段性评审等。初入测试行业,进入企业从事测试工作的人员,都要从该层次做起,虽然有时感觉乏味无趣,甚至迷茫困惑,但是我们可以根据个人的兴趣与特长,向上选择适合自己的路线,因为谁都不会甘心一辈子只做一个普通的测试工程师,那么大家看到这里,就可以摩拳擦掌,看看向上发展的通道中,哪一个适合自己,然后立刻从现在开始,确定自己未来5年、10年甚至一生的发展目标迈进,用笔者经常跟学员说的一句话来形容:把握现在,即刻做起,相信自己是最强的!
      首先是常规路线,即双V模型的重叠线,这条发展路线要求管理与技术并重,因为软件测试的行业特点决定了这个因素:测试工程师向上晋升到测试主管、测试经理、测试总监,直至咨询域的更高方向!
      测试主管是企业项目级主管,对于中小型软件公司也可以是企业级主管,属于中级发展域,适用范围是2到5年职业经验的测试从业者。其工作内容是根据项目经理或测试经理的计划安排,调配测试工程师执行模块级或项目级测试工作,并控制与监督软件缺陷的追踪,保证每个测试环节与阶段的顺利进行。严格来说,这个级别更多属于测试的设计者,因为企业的测试流程搭建是由更高级别的测试经理或相关管理者来做的,测试主管负责该流程的具体实施;而更多的工作,是思考如何对软件进行更加深入、全面的测试。因此笔者认为测试主管比较有创造性的工作内容就是测试设计,而恰恰很多公司忽略了或没有精力来执行此工作内容!应该说,在一个企业里做了3年左右测试工作的人员,很容易晋升到该职位,而之所以晋升,是与个人测试技术的过硬、测试方法的丰富,加上对测试流程的监控力与执行力的职业素质息息相关!
      测试经理是更高级别的测试管理者,属于高级测试方向域。对于大中型软件公司,该职位尤为重要,并且对其职业要求也比较高,一般适合4到8年的测试从业者,在管理与技术能力双双比较成熟的情况下,可以结合具体环境晋升到该级别。测试经理负责企业级或大型项目级总体测试工作的策划与实施。随着软件行业的发展,企业对软件工程里各个角色的定位逐渐明显,测试经理完全与开发经理(一些公司也成为项目经理)平齐,除了需要统筹整个企业级或项目级测试流程外,还要对于不同软件架构、不同开发技术下的测试方法进行研究与探索,为企业的测试团队成员提供指导与解决思路,同时还要合理调配不同专项测试的人力资源(如业务测试工程师、自动化测试工程师、白盒测试工程师、性能测试工程师),对软件进行全面的测试;另外,一些企业里,测试经理还需要与客户交流与沟通,负责部分的销售性或技术支持性工作。嘿嘿,看看那些高薪招聘测试经理的企业对该职位的要求里外语口语的描述,就可见一斑!
      测试总监,属于常规发展路线的最高域,如果再往上发展,那只能是咨询域了;不过笔者并没有将其在图中标记出来,因为该职位对于国内目前的大多数软件公司根本没有设立,也就没必要再在图中体现了。该职位一般在大型或跨国型软件企业,或者专向于测试服务型企业有所设立,由于其企业自身的职位定位不同,以及软件测试整体行情所处的阶段,这里不好归纳陈述;但是一般设立测试总监的企业,该职位都相当于CTO或副总的级别,是企业级或集团级测试工作的最高领导者,驾驭着企业全部的测试与测试相关资源,管理着企业的全部测试及质量类工作。而其职业要求,也是技术与管理双结合;基于目前软件测试行情看,这种高管理-高技能的发展目标,不会适合大多数人的选择,社会也不会提供如此众多的测试总监职位让我们去应征!
    应该说,大多数测试从业者都不是技术与管理双优的人,而如今一些到达测试经理或测试总监级别的优秀测试人才,已经领先一步开辟了这条发展路线的先河,希望这些朋友和大家多多分享经验,让更多的朋友弥补自己管理或技术上的不足,在这条路线上有所建树,共同提高,在实现个人人生价值的同时,也自然而然的推动了软件测试行业的发展;行业发展了,测试人员不再被忽视了,待遇自然也提高了,也就不会有很多朋友迷茫的跟我说“我的日常工作只是点击按钮和按键盘”了,因为我们相信行业的不断成熟,会逐渐将软件测试职业细化,我们的从业者就可以真正的在如下的管理路线和技术路线找到自己的位置,并潜心走向深入的!
      软件测试,是技术主导的职业;不管选择哪条发展路线,都是需要一定的技术沉淀,只是相对来说,管理路线对技术方面要求不高而已。那么我们就先挑重头的技术路线展开讨论。一般来说,一个普通的测试工程师刚入行,3个月左右熟悉企业的工作流程和模式,那么今后的工作内容趋于平稳。然而社会是残酷的!如果单单停留在测试工程师的阶段,若干年后,相信你再也竞争不过那个时候的应届毕业生,当你的工作技能和职业素质趋于与那些朝气蓬勃的年轻人相当时,企业会毫不留情的选择他们,而release你,因为你的成本消耗要比他们高,这是大实话!然而现实又是公平的!因为软件开发技术的不断日新月异,软件功能需求的不断丰富多样,决定软件开发这一系统工程的错综复杂,因此为了保证软件的质量,就要提高测试的水平,这也就为软件测试职业的细化起到先决因素,也是目前社会上出现招聘专项测试工程师的必然趋势!因此,这个趋势给了我们这些常规测试工程师一个空前的好机会!所谓“以毒攻毒”,软件开发靠的是技术,为了测试软件,也必须用技术;那么我们就来看一下从技术路线,软件测试职业发展有哪些方向。
      技术路线,笔者结合国内外软件测试行业现状,划分为三个半方向,分别是自动化测试工程师、白盒测试工程师、性能测试工程师和认证测试工程师,在“双V模型”中右侧体现;前三者适用于通用软件测试领域,认证测试工程师乃嵌入式测试领域职位,至少目前仅出现在嵌入式领域,因此以虚线标记,即“三个半”的“半”。前三条路线对技术的要求程度逐渐增加,三条曲线的斜率也依次递增(认证工程师不参与比较)。
      自动化测试工程师,笔者为其定义在功能测试范畴,指通常所说的依靠自动化测试工具进行软件黑盒测试的工程师。笔者接触的很多测试界朋友,尤其年轻的刚入行者,对测试工具充满了无限的兴趣,他们喜欢那种编写脚本、调试成功后的快感,喜欢看到自定义的日志里记录了本来手工测试烦琐的无聊头顶的工作、而采用自动化方式实现后如此清晰丰富的内容后的兴奋!可以理解,因为笔者也是从那段时光走过来的,现在也负责于我们学员的自动化测试教学工作。从大环境讲,自动化测试是软件测试执行阶段的必然趋势,社会对于软件测试的认可度以及对自动化测试人才的需求必将日益增加,从目前国内做自动化测试的从业者薪资情况看,也普遍高于常规测试工程师,最浅显的道理是“自动化测试比手工测试有了技术含量,^--^”虽然自动化测试在整个行业的普及不是一朝一夕,但是从个人角度讲,自动化测试可以作为个人的发展方向之一,因为如果你率先掌握了这种技术,等到社会需要时,你已成为这个职位的成熟操作者!而国内的51testing把握了时代前沿,与自动化测试工具巨头厂商Mercury(美科利)合作,在中国唯一推出Mercury自动化测试全套技能认证(CPE/SP/CPC),相比其它初等认证,它的实效性和价值性更具意义,也为测试从业者提供了一个进入自动化测试领域的快捷方式!
      白盒测试工程师,笔者定位于在软件测试周期的单元测试阶段对软件进行的代码级测试的人,包括代码走读、代码功能与逻辑测试、代码内存泄漏检查、代码运行效率检查、代码测试覆盖率分析等。如果说,自动化测试只是依靠脚本语言完成测试脚本编写与调试的过程(因为自动化测试工程师的工作重点不在编写脚本),对于自动化测试工程师的技术要求要相对偏低的话,那么白盒测试工程师就要对大型程序开发语言的完全掌握,因此其技术要求相对偏高!而另一方面,白盒测试在目前国内软件行情下,一些公司根本不做,其成本高、代价大的特点决定了这个现状,而一些对软件质量要求非常高(如军事类、电信类、财务金融类等)的企业,也会调动开发工程师来实施此事。但是,还是那句话,测试行业在发展,测试人员能力在提升,软件的开发技术在复杂化,要对软件进行尽可能全面的测试,白盒测试不可忽视!当下专门高薪招聘白盒测试工程师的企业也比比皆是,从中我们可以感知,白盒测试工程师会是很多有开发背景、意欲进入测试行业的良好突破口,白盒测试人员的需求也会逐渐增加。
      性能测试工程师,即在系统测试阶段、功能测试后对软件系统性能指标进行采集分析和运行效率检测的人。笔者认为,在一个尽量压缩的测试流程里,功能测试可以手工进行,白盒测试可以不做,但是性能测试必须要做,除非该软件非网络类软件即单机版软件!这里笔者再提一个观点供大家参考:软件测试,从宏观上可以划分为三个大方面:功能测试、性能测试、安全性测试,功能测试说明软件做对了,功能测试+性能测试说明软件做好了,三者结合起来说明软件做的非常好!安全测试暂且抛之不提,这是下一个发展域的内容,但是为了把软件做好,为了真正保证软件的质量,性能测试绝不容忽视;只因目前很多企业由于时间、成本、人力条件的限制,暂且不做性能测试。性能测试工程师相对来说,是三个技术路线里技术要求最高的,因为软件的性能瓶颈归根结底落实到代码的运行效率这个问题上,因此性能测试要做好,性能测试工程师起码要懂开发;而为了发现性能问题,要懂软件开发架构;为了定位性能问题,要懂操作系统、网络协议、应用服务器乃至数据库的原理与使用;为了最终解决性能问题,要根据定位的问题有针对性的对代码、操作系统、网络架构、服务器、数据库进行优化!当然性能测试是一个系统工程师,绝对不是一两个人的事情,对于常规性能测试工程师,具备定位性能问题的能力即可。正因为性能测试工程师技术要求的高超,该职位的待遇也是目前测试技术路线最高薪的一个,实为综合技术能力较强的测试人员的明智选择!
    上述四职业路线由于其技术程度的突出,一般在企业里由测试经理直接所属,与测试主管级别具有相同的待遇,并处于相同发展域。
      进入技术路线的高级域,根据中级域的四个路线,可以细分成五个路线,分别是资深自动化测试工程师、资深白盒测试工程师、资深性能测试工程师、安全性测试工程师、标准化工程师,这些高级技术类人才完全与常规测试经理平齐,属于软件测试职业发展高级域。
      资深自动化测试工程师由自动化测试工程师晋升而来。如果说常规自动化测试工程师只是负责自动化测试脚本本身的设计与开发,那么资深自动化测试工程师的工作内容就是自动化测试这项工作的实施!笔者早年在IBM公开讲座时候,讲过一篇《以RUP原则实施自动化测试》的主题,RUP里提倡自动化测试是一个庞大的系统工程,绝对不是有了技术、有了工具、有了掌握技术和使用工具的人就可以实施的,而是应该把自动化测试当成一个针对企业自身的项目来看待,需要经过引入、计划、设计、测试、执行、配置管理等环节(参加sincky的blog“天行健-君子以自强不息”),而这些自动化测试的流程搭建,就是资深自动化测试工程师的份内之事。另外,笔者要强调,按照国内外自动化测试领域的发展趋势,我们把自动化测试划分为四个发展阶段(我的blog里也有阐述);也就是说,录制脚本-添加验证点-回放脚本只是最初始的自动化阶段,要在企业实施自动化测试,要有资深自动化测试工程师来设计数据驱动,开发测试框架,甚至一些企业内部自主开发小型测试工具(而非商业工具)的先例,这些也都是建立在资深自动化测试工程师具有深厚的技术底蕴后,主导其他人员协调完成的事情。
      资深白盒测试工程师,其工作内容包含常规白盒测试工程师的内容,除此之外,要协助测试经理或测试总监攻关测试方法与技术性难题,因此其技术水平更加雄厚。如果常规白盒测试工程师是停留在某种程序设计语言类型的代码级测试,那么资深白盒测试工程师就要脱离程序设计语言本身,结合不同架构、多种开发技术交互的情况下,寻找代码测试方法,并具有对代码优化的能力。由于该路线在国内很少有实例参考,这里不再赘述。
      资深性能测试工程师,来源于常规性能测试工程师,按照常规性能测试工程师的技术要求,资深性能测试工程师应该具备性能测试整体方案的设计能力,以及软件系统性能问题定位和性能优化的能力!初此之外,也要对主流的软件开发模式下的应用系统具有敏锐的洞察意识和感知意识。软件开发的架构会日益复杂化,软件应用的各种软硬件平台、数据库类型、服务器类型、网络协议层出不穷,不得不说,都为性能测试的从业者们提出了严峻的考验!值得庆幸的是,各种同类产品的厂商在开发产品时都遵从业内统一标准,性能测试人员结合自身的丰富经验,加上对软件性能测试技术的研究,这样的考验我们欣然面对,这样的人才则会日益增多,在软件测试行业里充当佼佼者地位。
      安全性测试工程师,笔者将其从性能测试工程师衍生出来,因为只有具备性能测试经验的人,才对软件的开发模式、实现架构和技术本身充分了解,才会感知和预见软件系统存在的安全漏洞,加上其本人是测试出身,才知道如何通过系统漏洞尝试攻击软件系统,达到测试的目的。目前国内软件行业对于安全性测试的认识尚未清晰,该职业也更没有普及,一般只限于军事类、机密类、防病毒类或其他高安全性软件的测试工作中。
      再次强调,人类进入文明社会后,任何社会活动都不是独立的个体能够实现的;在高度讲究团队合作、协同办公的今天,软件测试工作更不是测试工程师几个人就能做完所有的事情的;上述各发展路线的技能要求,只是为了增强个人职业突破的砝码,你的砝码越多,“被利用”价值越大,为企业创造利润的程度越高,企业自然给予你更丰厚的回馈!达尔文伯伯的“优胜劣汰”自然规律不会变,“多劳多得、少劳少得”的市场规律也不会变!
      曾经有如此众多的测试职业发展路线放在我面前,结果我没有珍惜;等到软件测试行业发展到成熟阶段,我想入行却入不了行的时候,我才后悔莫及;尘世间干测试最大的不幸莫过于此;如果非要问sincky:再往上的发展通道是什么,那么sincky一定要告诉你,技术专家域!
      在技术路线,向上继续提升的方向,我们称之为“技术专家”;如果说前面描述的技术职位的所涉范围都定位在企业内部,即企业级资深性能测试工程师,那么技术专家,我们可以看作是领域级专项人才!随着软件测试行业的职位不断细化,每个人在自己擅长的领域走向深入,都可以成为该领域的技术专家,技术专家在自已经营的领域里,具有个人独到的见解和深厚的技术实力,而这类人才可以不再从事具体的测试工作,而是提供行业性测试技术咨询、培训等,为软件测试整体行业的发展,起到了鲜明的带头作用。在一些专业的咨询、培训公司,或者IBM、Microsoft等巨型公司,不乏这样的人才;然而目前在我国,这样的人才较少,但是却可以为我们大家提供努力方向,只要我们每个在技术路线供职的测试从业者,规划好自己的职业人生,并以坚韧的毅力和顽强的斗志,若干年后,你我皆可笑谈测试人生,把酒临风,其喜洋洋者矣!而目前在国内几个IT行业发达的省市,专项于软件测试服务或一些大型软件企业,也有这样的职位暂露头角,我们深信,社会对高端人才的需求趋势是越来越大的,更多的优秀企业也会为员工提供更多、更广的发展空间,值此大好形势,就看我们个人如何充分利用这些上升通道了。
      在我们的软件测试从业人员里,有这样一部分群体:他们非计算机相关专业毕业,不懂软件开发,由于国内种种对软件测试人才的偏激认识,认为测试人员不需要懂开发,只要会编写文档、执行用例即可;因此很多测试工程师并不具备开发背景,并且对软件技术掌握肤浅,而对于没有技术底蕴的人强迫其走技术路线,不能不说是一种折磨!因此,这个群体里的朋友,是不是认为自己只能做一辈子常规测试工程师呢?答案是否定的,因为在“双V模型”的左侧,是软件测试职业发展的管理路线。软件测试的管理路线,与通用职业发展示意图的“高管理-低技能”并不完全相同,只因软件测试独具的行业特点,我们认为软件测试行业的非技术路线发展方向,更多的是从软件测试行业衍生出来的职位,如质量保证、配置管理。如果说软件测试职业发展的技术路线更侧重于职业技能的提升,那么这条管理路线则更侧重于职业素质的积累(笔者强调是“侧重”,并不表示不需要);换句话说,技术路线更侧重人的智力因素,而管理路线更侧重人的非智力因素。
    从事了1到3年左右的常规测试工程师,在经过对个人性格特点剖析后,如果认为自己是一个倾向于“高管理-低技能”的类型,那么想要实现自己的职业提升,可以向中级发展域的配置管理工程师、质量保证工程师、业务测试工程师转型。
      配置管理(SCM)与质量保证(SQA)同是CMM中的关键过程域(KPA),也同是现代软件工程里的必要角色,与软件测试同属软件开发团队的重要组成部分。只因这两个角色在软件工程里的人员配比数量相对较少,还不如软件测试这样规模化乃至于形成行业,而最多是一个职业;另外一个社会现象是,企业很少直接从社会直接招聘配置管理工程师和质量保证工程师,而通常的做法是从企业内部的现有测试员工队伍里选拔,而转型后的测试工程师,就成为SCM或SQA。分析其原因,我们可以感知,SCM、SQA与软件测试工程师都是关注于软件质量的相似职位,社会对于配置管理、质量保证的定义和工作内容并未普及,与其直接从社会招聘“0”基础的人来培养,倒不如从软件测试人员里升华!一般来说,这两种职位的上报对象是项目经理或相同级别管理者。
      转型后的配置管理与质量保证工程师,一定要转变一个意识,那就是常规测试工程师的工作范围很大一部分(不是全部)只限于测试流程,而配置管理和质量保证的工作范围是面向整个软件开发流程,二者的职业要求都非常重视软件工程知识体系的建立和软件开发总体流程的实施能力。由于配置管理工程师除了企业配置管理流程的搭建与实施外,一般会涉及配置管理工具的管理与维护,而质量保证工程师更多的工作是软件开发流程的控制与维护,故而配置管理对技术的要求稍高于质量保证。随着我国软件行业水平的不断发展,众多软件公司纷纷通过CMM/CMMI,企业对于软件开发团队的角色配比制度也将逐渐健全,当前社会对配置管理与质量保证工程师的职位需求日益增加,种种现象表明,对于软件测试工程师出身的从业者,转型至SCM/SQA不失为突破个人职业生涯瓶颈的又一通道!
      业务测试工程师,笔者定义为面向行业类软件业务逻辑与工作流测试的人员。当前软件开发类型,很大一部分是行业类软件的应用,如ERP、SCM、CRM、OA、电信、金融、财务、嵌入式、通信、手机、游戏……这就要求从事行业类软件测试的人员具备行业背景、业务知识,熟练该行业工作流程。从社会上出现的很多对此类经验要求的测试工程师招聘信息中,我们更加肯定这种趋势;所谓存在即是道理,既然社会上有了需求,那么就可以作为个人发展的方向。而另外一个特点是,业务测试工程师的工作内容主要是黑盒测试,属于功能范畴,因此对技术要求不大,设置一些大型行业类软件公司的业务测试工程师薪资丰厚,但是完全可以不懂技术,因为它的工作性质决定了不需要懂很多的技术!他们甚至连软件的界面测试都不做——交给常规测试工程师实施,而完全关注软件的业务性和易用性,由于其深厚的行业背景,可以为软件的在正式发布前提出很多建设性的意见,而这些建议正是软件开发商提高产品易用性、增加用户满意度、开拓市场、创造利润的关键因素之一!
      当管理路线的中级域方向继续上升至高级域,就分别到达配置管理经理、质量保证经理、产品经理、业务专家,这类人才地位高、待遇厚,一般资深的软件工程领域专家都聚集于此。
      如果说配置管理工程师、质量保证工程师更加侧重于配置管理流程、质量保证流程的实施与日常管理维护,那么配置管理经理、质量保证经理就是更侧重于配置管理流程、质量保证流程的建立与改进。一般在中小软件企业,可能没有这两个角色,而全部的配置管理或质量保证工作都由工程师担当;但是大中型软件企业对资深配置管理经理、资深质保经理求贤若渴。软件系统越庞大,软件开发团队规模就越庞大,软件开发流程中出现问题的几率就越高,高效管理软件开发流程,不断改进软件质量,是每个软件公司在技术上没有顾虑后的下一个急需攻破的难关!
      业务专家,属于行业内咨询、顾问的角色,已经几乎脱离了测试工作本身,而更多为企业的产品需求分析、设计、开发、测试等各个环节提供指导工作,其目的也是提高软件的易用性和稳定性,减少后期不必要的需求变更。该职位也同样在目前热点行业的大中型软件企业有所设立。
      产品经理,这个职位在很多企业有所设立,笔者认为它是质保经理的派生,只是它更侧重于软件在产品化之前的质量监控工作,包括软件开发流程、软件测试等技术与管理的各个方面。由于该职位在业内没有明显定义,而根据不同企业的职位定位不同,这里无法统一陈述。
      管理路线的最高发展域是咨询域,与技术路线的专家域类似,在配置管理、质量保证、软件产品化、行业领域达到高深造诣的人才,他们有丰富的从业经验、深厚的管理底蕴,具有对软件工程高瞻远瞩的慧眼和胆识,往往供职在专业的咨询与培训公司,提供IT业管理类咨询与培训的服务,推动着软件行业的前进。国内外很多为软件企业进行CMM咨询和实施的公司里,就是这些人才的大本营之一!
      笔者认为,在“双V模型”的管理路线里,中低级发展域的人才对技术与管理的区分较为明显,而到了高级与更高级发展域,更多的是复合型人才,软件业以技术为主导,没有一定技术积累,还是很难达到高级境界;要在管理路线练出“上乘武功”,还是希望大家在主攻管理与流程类课题的同时,多丰富下自身的技术层面,嘿嘿!
    另外,笔者提倡管理与技术两条路线的平齐,而并非目前社会上认为的技术要比管理低一等,技术是靠吃青春饭,在这些人才到达最高发展域的“咨询”与“专家”层面,二者应该完全具有相同的地位和待遇,只是“称谓”不同罢了!
    “双V模型”是sincky结合当前国内外软件测试行业现状提出的职业发展流程图,仅供测试从业者参考,并非一个“死”的框架,大家不要拘泥于流程图本身;其实目前国内很多上升到高级域或最高域的资深人才,很多都是跳跃式、甚至跨越式的职业发展,因为命运掌握在自己手里,任何人都剥夺不了设计自身人生蓝图的权利;而另外一个角度是,任何人都不该不珍惜为自己规划职业生涯的机会!
      软件测试,一个日出东方的国际型行业,虽然偶尔会弥漫晨雾,甚或有暴雨来袭,但是我们都该坚持!有人说:“什么叫失败?”答曰:“放弃就是失败!”每一次当我们身处逆境时,决不能用软弱的眼泪作为走向明天的见证,更不能用脆弱的感情去拴住生命的航线;是雄鹰就该搏击长空,是蛟龙就该挽起狂澜;沧海横流,方显英雄本色,疆场搏斗,可露壮士肝胆!人生没有豁免权,每位从业者只有怀着不息的斗志,乘千里长风,破万里巨浪,才能支配命运走向辉煌的明天!
      后记:sincky,网名叶赫华;在我从事软件测试培训业的1年多里,接触了国内很多除了我们学员以外的软件测试界朋友,其中新手居多。在我们的网站、论坛、我个人的blog、我的qq群乃至其他朋友以我名义建的qq群里,最让大家感冒的话题就是测试人员的职业发展!大家都在做测试工作,可以不知道明天做什么,明年做什么,或者若干年后做什么!“行有行规”,除非不在软件测试这个行业,否则就要遵守这个行业的规律!我觉得,我们的学员有职业发展培训课程,可是面对外界这些热心朋友的提问,长久以来,我一直想集中的写点东西,起码让刚入行的新手对这一行业的职业发展方向有一个直观的感性认知,我也心满意足!但是这个行业还太嫩,并没有章据可循,我搜索了几天的国外网站,可是没有成文的观点可以参考!后来决定自己来写,参照的对象就是国内现状下的测试从业者,于是在和国内各个领域的测试高手朋友们的交流后,我在2006春节前夕用了一白天的时间画出了“双V模型”图,而这篇文章的撰稿,用了我一天一夜的满满时间。在经历几次修改后,这篇文章在今天终于正式发布了,没有别的,只是希望给国内测试界朋友一个参考,欢迎大家批评、讨论,发表自己的观点!(我的msn地址:sinckyzhang@gmail.com)“双V模型”里很多职位名词在国内叫法不一,比如有人把初级测试工程师叫做测试员,我不赞同这种叫法,毕竟不是主流;而我的目的,只是通过这些职位的工作内容来告诉大家在职业定位上需要达到的高度,名字嘛,只是个代号而已!
  • 记一次无聊的面试

    sweetxmy 发布于 2010-07-30 14:49:32

        这周比较雷,突然接到一家电子商务公司的电话面试。反正这周工作任务也不重要,就屁颠屁颠的去了。周三晚花了一个小时看第一本书,加深黑盒测试,白盒测试,用例测试方法的知识点。因为是一家电子商务公司,公司资料介绍中说明了重点是支付相关的。心里还是自己预测了一下,做好了面试时沟通的侧重点。

        那个路程遥远啊,1号换2号,那2号简直不是人乘的,N多人想下被挤上,N多人挤不上去。等了3趟,终于被挤上了。到了张江,乘了半个小时的车程,终于到了那个科技苑了。

        进去填写简历,本来想自己带简历的,后来发现公司的打印机坏了,干脆不打印了,反正面试的公司都会打印的。2年多没填写过简历,有些东西都忘记了。现在公司都搞个联系人,还得翻手机电话簿。10分钟后终于填写完了。

        这时也大概看了面试公司,一幢独立楼,估计在1000平吧,上下四楼,
    一楼大厅里基本是密密麻麻坐满了年轻的男女,当然也看到了二位未上年纪但面如黄花的阿姨,坐我旁边的5位XDJM正在和公司签订协议。
    另一边是一位小帅哥好像也是面试的,只是扫了一眼。

    又过了10分钟,2个前台MM,其中的一位,叫我的名字,要我做一份测试考卷。

    试卷内容:
    1.判断题:
    1.1alpha测试和Beta测试是验收测试?
    1.2白盒测试
    1.3黑盒测试
    1.4测试覆盖率
    1.5LINUX解压知识
    1.6测试中发现一个BUG,测试人员本人就可以改,问改不改。


    2.选择题可多选:
    2.1MANTIS中不用哪几个的管理状态reject,postpone
    2.2哪些属于验收测试:alpha测试和Beta测试
    2.3软件测试指:
    2.4哪些属于黑盒测试:



    3.填空题
    3.1OSI7层协议内容
    3.2WEB测试中,报错说明:200,403,404,500,502
    3.3评审内容


    4.问答题
    4.1如何判断LINUX网络状态
    4.2负载,容量,压力测试三者的区别?
    4.3JS验证码的实现方法,LR性能测试的流程?
    4.4什么是QA,QA和开发的关系?
    4.5WEB功能测试重点?

    第一位XD问的问题多
    1.先介绍自己
    2.WEB功能测试重点?
    3.介绍了一下你目前正在测试的产品和一些心得
    4.问有关支付的测试
    5.测试用例的方法
    6.用例评审的过程,回答(分单个和整个模块)
    7.理想的测试流程
    8.性能测试方法
    9.有没有用过其它的工具,比如说profile
    10.BUG管理的级别?
    11.愿意加班吗?
    12.个人优点和缺点?
    13.测试用例的组成
    14.当前你用什么管理测试用例
    15.工作中用的是什么数据库,怎么对它进行测试?重要指灰盒

    沟通要点:
    学会反问主考官问题:确认数据库是不是MYSQL,还有BUG管理是不是MANTIS。
    另外问一下有没有用QTP,LR测试工具来做测试。
    要学会反问问题,说明你在思考,你想融入。考题中出现的问题有可能正说明对方公司正在使用,如果反问反而会加分。当你看到主考官面带微笑,而且不停地对你点头并且也对另一面试官点头时。说明你已经通过这一关,可以顺利进入下一关了。
    第一位XD对我个人的总结,非常善于沟通,很适合做测试主管。

    第二位
    XD测试主管面试(据说是在微软公司干过)
    1.简单介绍自己
    2.
    WEB功能测试重点?
    3.图片上传功能的测试?
    不足:未考虑文件名的中英名和长度。
    4.测试用例的设计方法
    5.性能测试
    6.内存泄漏和分析工具
    7.薪资要求
    8.有可能会加班
    探讨了文本框的测试:
    如果一个文本框设置了MAXLENGTH=15,怎么做测试。考虑三层的测试,边界值。

    沟通要点:
    先可以了解他的姓名和职位,一定要微笑着问。这叫套近乎。其实有时面试一分钟,你就可以把对方吸引,让考官对你有好印象。那天也是这位XD告诉我第一位XD的面试结果的。
    因为这位有可能是以后的直接上级,所以问的问题可以更具体更深入些。
    比如他的个人爱好,公司目前的用例管理工具和流程,模块测试的周期和结束标准是怎么安排的?这对我们进入这家公司后的工作开展非常有利。有没有作用例评审等。
    反正有个小技巧是,你可以将第一位主考官问的问题找几个适当的问一下第二个考官,看看对方的回答。
    问对了问题,以后可以少走弯路,当然也要适可而止。挑重点的问,如果在乎环境就问环境,有关薪资和加班最好只探一下口风。
    另外如果真的对面试公司感兴趣,可以问对方期待你进入后做些什么工作?
    第二位XD回复是对业务的分析非常到位,2天内等人事打电话谈薪资

    当天下午回到公司接到这家公司人事的电话,可惜不是我想要的。
    回绝了:原因有2个,觉得这家公司不太适合我。
    我还是喜欢到外资(各个方面相对比较正规,不像国内的公司有些法外的东西)。
    其实原来只要工资合适就想换了,就是因为这个微软的XD,也想去和他探讨探讨,但事实是这家公司的制度不是太理想,而我也不想委屈自己了。
    虽然人事说工资还可以再谈,但我个人对这家公司感觉没有谈的必要。
    因为如果刚开始都不开心,都不愉快,以后也会很郁闷。
    既然选择了自己喜欢做的事,那就应该选择一家适合自己的公司。然后完全去付出,let test make me crazy.enjoy test.

    面试总结:
    1.面试前了解一下被面试公司的情况,有针对性的去提问。
    对可能被问到的知识进行预习,比如说有关WEB测试的知识。
    2.因个人只是好玩就去了,没想到薪资的具体条件。不过这也是提醒我,应该好好准备面试,思考好自己的薪资。别被人事玩进去了,这种事有时很有趣,自己不小心就会被人事给套了。自己做过人事,经验还是有的。
    3.对于薪资,个人觉得还是要正视自己,分析一下自己的行情,是不是心里价位。
    至少要想清楚近3年的薪资和发展空间,否则误入行,有点浪费时间。
    4.虽然只是一个无聊的面试,但我还是收获了很多。
    电子商务公司现在测试还是比较深入的,不过我是非常看重时间和收益的。个人感觉如果测试得太深太细反而影响产品的进度。时间即成本吧,早一秒入市就是市场,就是金钱。所以我觉得每个做测试的人都应该了解一些最基本的经济学。比如说:时间成本,机会成本。
    5.其实偶尔去面试也可以知道自己在行业或别人眼中的价值,这反而有利于自己进一步的发展。

    技巧性:
    1.针对主考官想要了解的知识深入回答,但要注意点,别过了头。
    像我会重点介绍我现在做的项目,因为我很熟悉我的项目,特别是自己平时非常注意收集和整理测试的心得,所以回答时侃侃而谈。
    2.因为了解到这家公司打算做支付功能
    而我个人有近一年的支付功能测试经验,所以可以大谈特谈。
    3.针对主考官不熟悉的,可以更深入说明,这可是咱们的卖点。
    4.针对主考官熟悉而咱不熟悉的,可以以探讨,学习的心态进行沟通。
    这样大家沟通气氛会很愉快,这时不知不觉中你已经把主考官融入了,到后期了解薪资就很简单了。



  • 5年了,软件测试职业生涯规划

    PeterKang 发布于 2011-04-29 15:49:21

    做了5年多的软件测试,最近开始对自己职业生涯的发展特别关注,在网上找了一些文章并且加上一些自己总结。




    1. 测试工程师(3年内)
    属于测试职业生涯初级阶段
    工作内容:
    a.按照测试主管分配的任务计划
    b.编写测试用例
    c.执行测试用例
    d.提交软件缺陷
    e.提交阶段性测试报告、参与阶段性评审

    2.测试主管(2~5年)
    根据项目经理或测试经理的计划
    工作内容:
    a.安排、调配测试工程师执行模块级或项目级测试工作
    b.控制与监督软件缺陷的追踪,保证每个测试环节与阶段的顺利进行
    c.偏重于测试设计

    3.测试经理(4-8年)
    a.负责企业级或大型项目级总体测试工作的策划与实施
    b.统筹整个企业级或项目级测试流程
    c.对于不同软件架构、不同开发技术下的测试方法进行研究与探索
    d.为企业的测试成员提供指导与解决思路
    e.合理调配不同专项测试的人力资源(业务测试工程师、自动化测试工程师、白盒测试工程师、性能测试工程师)
    f.与客户交流与沟通,负责部分的销售学或者技术支持工作

    4.测试总监
    1.驾驭企业全部的测试与测试相关资源
    2.管理着企业的全部测试及质量类工作

    5.自动化测试工程师
    a.依靠自动化测试工具进行软件自动化测试

    6.资深自动化测试工程师
    a.设计数据驱动
    b.开发测试框架
    c.企业内部自主开发小型测试工具

    7.白盒测试工程师
    a.对软件进行的代码级测试
    b.代码走读、代码功能与逻辑测试
    c.代码内存泄露检查
    d.代码运行效率检查
    e.代码测试覆盖率分析
    f.要对大型程序开发语言的完全掌握

    8.资深白盒测试工程师
    a.协助测试经理或测试总监公关测试方法与技术性难题
    b.结合不同架构、多种开发技术交互的情况下,寻找代码测试方法,并具有对代码优化的能力

    9.性能测试工程师

    10.资深性能测试工程师
    a.具备性能测试整理方案的设计能力
    b.软件系统性能问题定位和性能优化的能力
    c. 对主流的软件开发模式下的应用系统具有敏锐的洞察意识和感知意。

    11.安全测试工程师
    a.对软件的开发模式、实现架构和技术本身充分了解
    b.感知和预见软件系统存在的安全漏洞
    c.知道如何通过系统漏洞尝试攻击软件系统,达到测试的目的

    12.领域级专项人才
    a.具有个人独到的见解和深厚的技术实力
    b.提供行业性测试技术咨询、培训
    c.为软件测试整体行业的发展,起到鲜明的带动作用






    1.绿色勾代表我已经达到的
    2.紫色1表示3年内要达到的
    3.绿色2表示5年内要达到的
    4.蓝色3表示10年内要达到的

    目标清晰了,接下来就是实际行动了。
  • 没有需求文档的时候如何来设计测试用例?

    zte_boy 发布于 2008-11-22 23:08:39

    这个问题出题很新颖,着重是考察公司的测试Leader应对突发事件的能力?
    以前我们公司招测试Leader的面试题目中也有类似的一个题目?我面试了很多人,回答都不是很理想,都只能够回答上几句话,并且都有“需求不明确”等同感,只是工作中太忙缺少总结,给出一个常见的很熟悉的问题,马上作答不知道如何说起。

    下面是我的一些看法,恳请各位同行批评指正:
    1.根据客户的功能点整理测试需求追朔表:
    一般的客户都要把要开发软件的功能点写成一个表格交给市场部,让市场部门转交研发部。所以客户的功能点是编写测试用例一个最最重要的依据。

    2.根据开发人员的Software Specification List整理我们的功能测试点:
    一般来说,开发人员实现一个功能都要把该功能分成几个子模块来实现,所以Software Specification List也是我们参考的另一个比较重要的依据。

    3.开展项目跨部门讨论会:
    可以抽出时间,叫市场部的项目负责人、产品经理、项目经理、软件开发经理和软件开发人员,分别讲讲他们对整个产品的认识和设计模式,对每个功能点的理解和认识,理顺思路,达成共识,测试人员负责记录,测试Leader负责整理汇总,形成测试的部分参考文档。

    4.测试人员整理用例需求疑问递交项目组和客户代表回复:
    测试人员根据项目讨论会后的理解,测试过程中可能碰到的问题(如:边界值、输入数据类型等等)和需求不明确的问题,整理用例需求疑问,让相关的模块负责人在“用例需求疑问”表格中回复,并给出详细解释和说明。

    5.项目内部用例评审:
    测试人员根据对项目的理解,编写测试用例要点,测试组内部评审修改后,可以召集项目组的成员,帮助Review一下,然后进行修改。经过多次修改和评审以后,测试用例要点可能会更加全面一些。

    6.邮件和客户代表确认部分争议问题:
    测试人员与开发人员、项目组成员,在需求问题上讨论有时候观点不一致,各说各有理,这种情况下最好把争议问题写成邮件,发给客户让客户来拍板,确定那种需求合理,到底如何做?抄送项目组的全体成员,方便大家都了解客户的意见。最后编写测试用例的时候,以客户的邮件内容为准。

    7.项目Demo和部分已开发系统:
    大部分的系统,由于没有需求,为了避免项目风险,开发方一般都要做成Demo,不断让客户确认后签字,不断展现新开发的功能,以达到吸引客户的目的。如果项目中有Demo,Demo也是参考标准。如果什么都没有,那已经开发的部分功能模块,要去随时让用户了解了解,并提出部分修改意见,也可以为我们熟悉系统提供部分依据。

    8.参考同行业和竞争对手的类似产品:
    假如说是做一个网上书店类似的网站,我们编写测试用例的时候,可以看看“当当网”,“China—pub”等等类似成熟相关的网站。很容易发现本公司产品的问题,无意识给产品添加了竞争力。对于竞争对手的了解一定不能够少。

    9.交叉模块的测试,最容易被人忽略:
    一般的产品,功能部分的交叉,即是说在A模块中设置了参数,在B模块和C模块中体现该参数的实际运用。比较难的如我们现在测试的“银行系统”中的交叉模块,还可能牵涉到不同的用户,3个以上的模块之间的调用。即是有了需求也很少写,同时也是需求编写的一个薄弱环节。这样的测试用例编写问题,一般初级测试工程师很难考虑全。对于有这种交叉功能的模块,必须要求项目组中的精兵强将,画出相关的调用关系图,表明调用关系,方便后面编写测试用例。

    10.可以使用电话、MSN、Skype等网络聊天工具咨询部分需求:
    我们做的产品,大多数的客户都在国外,测试经理也可以用这些网络聊天工具和客户确认部分需求疑问。不过要要事先越好时间,并注意异地的“时差”。

     

  • 新加入一个团体,如何能尽快的展开测试工作

    zte_boy 发布于 2008-11-22 23:13:53

    作为一名测试新人加入团队,大多数情况下,项目组成员都是一种热情欢迎的态度,并且主动提供力所能及的支持和帮助,如何快速熟悉项目业务和测试环境,尽快投入到实际工作中去,我谈谈个人的经验和一些看法,供同行参考:

    1、寻找新公司的团队元老:

      一般来说,一个新人进入新公司,都要指定一个师傅带一段时间,这也就是我们说的测试前辈。很多时候,测试前辈都是经验非常丰富的测试高人,如何您和他相处融洽,关系不错,凭他个人丰富的业务经验,给您指点迷津,也许会比你自己摸索10倍的时间效果还好。很多的测试新手,刚进入新公司时,自高自大,眼高收低,测试前辈都不愿意交,结果到了试用期转正答辩的时候,一问三不知,被迫离开公司,被炒鱿鱼。这样的例子我看到的不下于10例,很可惜丢失了很多工作机会。

    2、虚心的学习态度:

    刚到一家新公司,保持谦虚的学习态度非常必要。记得我刚毕业那年,公司招聘了一个测试主管,他有4到5年的工作经验,阅历算是不简单,也是我们心目中的牛人吧。但是那个人,除了听总监的话以外,对于我们部门的其它人来说,他简直是自高自大,目中无人,根本不把部门里的其他人放到眼里,觉得部门的人都不如他。他作为一个空降兵,老员工和新员工,对他都很冷漠,碰到什么问题,需要小组成员帮忙的时候,大家都不愿意帮助他,互相推诿,并且经理也找他谈了几次话,效果不明显,结果他呆了不到2个月,估计是自己觉得很不开心,被迫离开了公司。其实,保持低姿态,谦虚的学习态度,必不可少。

    3、阅读项目相关的文档:

      一般来说,新人一到公司,就会安排到项目中去。作为测试新手,快速阅读相关的“需求文档”、“详细设计文档”和“用户手册”特别关键。我们能够通过需求规格说明书等文档,快速熟悉系统相关的知识,获取编写测试文档的相关信息。如果项目已经编好了用户手册,您完全可以根据文档的步骤,一步一步傻瓜式的熟悉每项功能。只有掌握的这些文档的精髓,测试才会变得异常轻松呀。

    4、快速熟悉项目相关业务知识:

    刚到新公司的测试人员,如果你是跳槽到以前做过的相近行业,有丰富的经验了,那么您熟悉业务没什么大的问题。如果您换的新公司是您以前都没有接触到的行业,那你一定得努力一点,买些相关的业务知识看看非常必要。我深有体会,以前从一家“通讯公司”跳槽到做“银行系统”的公司,业务完全两样,很多业务知识都是从零开始。不过有一定的工作经验,学习起来也挺快,关键取决于个人是酷爱学习和坚强的学习毅力。

    5、尽快介入了解被测试系统:

       刚跨入一家新公司,如果被测试系统已经开发的差不多了,部分功能已经OK了。你可以部署到测试环境下,尝试从直观测试的角度去尽快了解系统,尽快结合文档熟悉起来。很多的时候,通过页面操作实际的系统比看文档效果好的多,并且印象更深刻,熟悉系统更快。新加入公司的朋友不防试一试。

    6、了解公司类似的相关产品:

        大多数的公司,都不可能在每个行业都非常强,基本上都是在某一个较小的领域很强势,公司主要就是研发强势相关业务的产品。所以说,相关的产品一般来说是很多的,如果要你测试的系统没有开发完毕,如果时间和条件允许,不妨先了解一下公司类似的产品,以便尽快熟悉起来。大多数情况下,公司很多的产品都是相通的,大部分的产品是在不同的客户要求下,修改了部分功能和界面而已。个人认为:了解类似的产品,也是测试新手快速熟悉产品的一条捷径。

    7、尽量多参加项目的各种会议:

        每个项目,特别是在项目的启动阶段,大会小会不断,很多时候项目组成员抱怨居多,都认为很浪费时间,耽误开发进度。如果作为测试新手的您这个时候加入,那太好了,多参加这样的讨论会。大部分时间都是在讨论项目的重点和关键,如果大家意见不一致,必然要对不一致的东西展开细节讨论,您肯定是收益匪浅。特别是对业务方面的讨论,您参加几次讨论,比您看10篇需求还强,并且理解也很透彻。如果您对需求有所了解,但是部分功能模块还有问题,就可以在讨论会上随时提出来,大家一起讨论,共同解决。如果有这样的机会,切勿放弃哟。

    8、阅读类似项目已有的测试用例:

       如果项目已经启动并进入了测试阶段,如果你在这个时候介入,通常情况下负责人都会给你提供整个项目或部分需要你测试的部分模块的测试用例。这些测试用例也是您快速上手测试的重要参考资料。如果还没有编写测试用例,你就介入了,那你就得重头开始,您可以阅读项目类似的测试用例,并结合以前项目的测试经验,根据公司相关的测试用例模板开始编写测试用例。如果在编写测试用例中碰到您不了解和很难处理的问题,您可以记入测试需求疑问表格,等部门开会时,提出来大家讨论。最好不要碰到一个问题就去问,经常打乱人家的思路,弄得别人嫌烦,那就不值了。

    9、查看缺陷数据库中旧有的缺陷:

       一般的测试缺陷跟踪系统,都是按模块来分类软件缺陷的。如果老大给你分配了测试任务,你就可以有目的的去熟悉即将测试的模块缺陷。登录系统后,对缺陷进行筛选,尝试按测试前辈的Bug描述步骤进行操作,看看是否能够重新缺陷?这种方法能够借鉴测试同行的经验,尽快发现问题,避免测试的盲目性。一来可以拓宽您的视野,避免递交类似问题的Bug或是重复的Bug,二来还可以为您快速熟悉被测试系统添砖加瓦。

    10、必须明白自己领导是谁:

       一般的员工进入公司,公司和部门领导很多,搞不清楚谁管我,碰到问题问谁?谁可以帮忙解决问题?如果真是这样那就麻烦了。部门领导臃肿的情况实在是太多了,有的公司,既有2测试经理,又有几个测试主管,还有多个项目经理和研发总监,不知道工作向谁回报,对哪个领导负责。弄得每个领导都回报,很累呀!!我的做法是:测试项目中负责领导只有一个那就是测试主管,测试主管负责安排和分配每个测试人员的工作和任务,我直接Review测试主管。如果项目中碰到有什么解决不了的问题,组内成员可以直接找我,同时我也定期加入项目参加部分测试,了解测试项目的一些进展情况,必要时还要找一些人谈心。这样,工作汇报比较简单明了,很轻松。

    11、熟悉与测试相关的管理软件的使用:

      我说的这个测试相关的软件包括缺测试需求管理软件(如TestDirector或QC)、陷跟踪管理软件(如:TestTrack Pro、TestDirector等等)、版本配置管理工具软件(CVS、VSS,还是SVN等等),具体熟悉到什么程度,那就要看您的职位了。如果您是一般的工程师,那你就只了解一般的使用就够了,如果您是测试经理,您不仅要了解一般的使用,还要更深层次的了解软件的权限和项目的配置,因为您要作为该软件的Admin,碰到问题大部分都由您搞定呀,高工资不是那么好拿的呀,哈哈!!!如果作为新入职的您,连这些都不会,那你就得加把油了,不然到了测试启动阶段,你才开始熟悉管理软件,那么你觉的能够快速展开测试吗?

    12、注意沟通技巧,把握请教良机:

      为了尽快熟悉项目,展开测试工作,沟通技巧必不可少。您作为新入职的测试人员,尽量了解每个开发人员开发的模块和每个开发人员的性格特点,寻找一些共同语言,拉近与开发人员的距离,让他们对您产生好感。只有这样,当您碰到问题的时候,他们才会鼎立的帮助您。如果您与开发人员关系不好,看了就觉的很讨厌,那他们肯定不会帮助您的,更不原意和您配合,当您提错Bug的时候,他们就会抓住这些Bug不放,有时候还要说您什么都不懂,这样你就很郁闷,肯定呆不长久的,只有走人的份了,呵呵。特别是开发人员很窝火的时候,您更要多一些理解和宽容,切勿火上浇油,您可以给他一些表扬,给他一些鼓励。他一听准开心死了,总觉得还是您们最了解我,把您当成自己人。这个时候,你再问开发人员问题,他也许态度就不一样了,他准会仔细的给你讲解,并且以后的什么事情,他也会百厌齐烦地帮助您的,因为他觉您最了解他们,无意识的把您当成了好朋友和哥们。还有的时候,开发人员有空过来测试部门逛逛,准备和您交流时,一定要把握机会,和开发人员开开玩笑和一些必要赞赏,也能够调节和开发人员的关系。总之,这一点做起来真的很难,如果做的好,那效果确实就不一样了

     

  • 测试用例编写规范

    joseph的师哥 发布于 2011-05-17 09:11:42


      一、测试用例编写准备

    从配置管理员处申请软件配置:《需求规格说明书》和《设计说明书》;根据需求规格说明书和设计说明书,详细理解用户的真正需求,并且对软件所实现的功能已经准确理解,然后着手制订测试用例。

      二、测试用例制定的原则

    测试用例要包括欲测试的功能、应输入的数据和预期的输出结果。测试数据应该选用少量、高效的测试数据进行尽可能完备的测试;基本目标是:设计一组发现某个错误或某类错误的测试数据,测试用例应覆盖方面:

    1、    正确性测试:输入用户实际数据以验证系统是满足需求规格说明书的要求;测试用 例中的测试点应首先保证要至少覆盖需求规格说明书中的各项功能,并且正常。

    2、    容错性(健壮性)测试:程序能够接收正确数据输入并且产生正确(预期)的输出, 输入非法数据(非法类型、不符合要求的数据、溢出数据等),程序应能给出提示 并进行相应处理。把自己想象成一名对产品操作一点也不懂的客户,在进行任意操作。

    3、    完整(安全)性测试:对未经授权的人使用软件系统或数据的企图,系统能够控制的程度,程序的数据处理能够保持外部信息(数据库或文件)的完整。

    4、    接口间测试:测试各个模块相互间的协调和通信情况,数据输入输出的一致性和正确性。

    5、    数据库测试:依据数据库设计规范对软件系统的数据库结构、数据表及其之间的数据调用关系进行测试。

    6、 边界值分析法:确定边界情况(刚好等于、稍小于和稍大于和刚刚大于等价类边界值),针对我们的系统在测试过程中主要输入一些合法数据/非法数据,主要在边界值附近选取。

    7、 压力测试:输入10条记录运行各个功能,输入30条记录运行,输入50条记录运行。。。进行测试。

    8、等价划分:将所有可能的输入数据(有效的和无效的)划分成若干个等价类。

    9、错误推测:主要是根据测试经验和直觉,参照以往的软件系统出现错误之处。

    10、效率:完成预定的功能,系统的运行时间(主要是针对数据库而言)。

    11、可理解(操作)性:理解和使用该系统的难易程度(界面友好性)。

    12、可移植性:在不同操作系统及硬件配置情况下的运行性。

    13、回归测试:按照测试用例将所有的测试点测试完毕,测试中发现的问题开发人员 已经解决,进行下一轮的测试。

    14、比较测试:将已经发版的类似产品或原有的老产品与测试的产品同时运行比较,或与已往的测试结果比较 。

    说明:针对不同的测试类型和测试阶段,测试用例编写的侧重点有所不同。

    1、  其中第1、2、6、8、9、13项为模块(组件、控件)测试、组合(集成)测试、系统测试都涉及并重点测试的方面。

    2、  单元(模块)测试(组件、控件)测试:重点测试第5项。

    3、  组合(集成)测试:重点进行接口间数据输入及逻辑的测试,即第4项。

    4、  系统测试:重点测试第3、7、10、11、12、14项。

    5、  其中压力测试和可移植性测试如果是公司的系列产品,可以选用其中有代表性的产品进行一次代表性测试即可。

    6、  GMPS基础测试用例设计完成后,其他的测试项目只编写设计与之不同部分的测试用例。

    7、  对于每个测试项目测试的测试用例不是一成不变的,随着测试经验的积累或在测试其他项目发现有测试不充分的测试点时,可以不断的补充完善测试项目的测试用例。

      三、测试用例的填写

    一个软件系统或项目共用一套完整的测试用例,整个系统测试过程测试完毕,将实际测试结果填写到测试用例中,操作步骤应尽可能的详细,测试结论是指最终的测试结果(结论为:通过或不通过)。
  • 面试中可能会遇到的问题

    zl121452974@126 发布于 2011-02-14 12:21:35

    缺陷的生存周期?

    缺陷汇报、缺陷确认、缺陷修改、缺陷修改确认、不是问题

    缺陷级别?

    非常低、低、重要、非常重要

    缺陷管理过程?

    1)提交缺陷 2)分析和定位缺陷 3)提请修改相应软件 4)修改相应软件 5)验证修改

    负载测试、可靠性测试、可用性测试的定义,有什么区别

    负载测试

    负载测试时通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试。

     

    可靠性测试

    (1)通过在有使用代表性的环境中执行软件,以证实软件需求是否正确实现。
    (2)
    为进行软件可靠性估计采集准确的数据。估计软件可靠性一般可分为四个步骤,即数

    据采集、模型选择、模型拟合以及软件可靠性评估。可以认为,数据采集是整个软件可靠性

    估计工作的基础,数据的准确与否关系到软件可靠性评估的准确度。

    (3)
    通过软件可靠性测试找出所有对软件可靠性影响较大的错误。

     

    可用性测试:

    故名思议是测试设计方案或者产品在一定的环境下的可用性水平。

     

    软件测试的目的和原则

    目的:

    (1)测试是程序的执行过程,目的在于发现错误;

      (2)一个好的测试用例在于能发现至今未发现的错误;

      (3)一个成功的测试是发现了至今未发现的错误的测试。

    原则:

    (1)应当把“尽早地和不断地进行软件测试”作为软件开发者的座右铭。

    (2)测试用例应由测试输入数据和与之对应的预期输出结果这两部分组成。

    (3)程序员应避免检查自己的程序。

    (4)在设计测试用例时,应当包括合理的输入条件和不合理的输入条件。

    (5)充分注意测试中的群集现象。

    (6)严格执行测试计划,排除测试的随意性。

    (7)应当对每一个测试结果做全面检查。

    (8)妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。

  • session VS cookies

    andyfly_001 发布于 2011-02-13 18:45:28

    一,Session:含义:有始有终的一系列动作\消息

    1, 隐含了“面向连接”和“保持状态”两种含义

    2, 一种用来在客户端与服务器之间保持状态的解决方案

    3, 也指这种解决方案的存储结构“把××保存在session里”

    二,http协议本来是无状态的,所以引进了cookiesession机制来保持连接状态

    cookiesession机制之间的区别与联系:

    cookie机制采用的是在客户端保持状态的方法

    session机制采用的是在服务器端保持状态的方案,由于在服务器端保 持状态的同时必须要求客户端提供一个标识,

    三,关于cookie机制

    Cookie的使用是由浏览器按照一定的原则在后台自动发送给服务器的,浏览器会检查

    所有存储的cookie,如果某个cookie所声明的作用范围大于等于将要请求的资源所在的位置,则把该cookie附在请求资源的http请求头上发送给服务器。

    存储在硬盘上的cookie可以在不同的浏览器进程间共享,比如两个IE窗口。而保存在内存里的cookie,不同的浏览器有不同的处理方式,对于IE,在一个打开的窗口上按CTRLN(从文件菜单)打开的窗口可以与原窗口共享cookie,而使用其他方式新开的IE进程则不能共享已经打开的窗口的内存cookie

    Cookie的内容包括:名字,值,过期时间,路径和域

    四,关于session的机制

       当程序需要为某个客户端的请求创建一个session的时候,服务器首先检查这个请求是否含了一个session标识(session id),如果有,则说明以前为该客户创建了一个session,服务器就按照session id把这个session检索出来用,一般一个cookie的名字就是类似于session ID,如果cookie被禁止的时候(cookie可以被人为的禁止),经常使用重写URL的方式,把session ID附加在URL路径后面,为了在整个交互过程中始终保持状态,就必须在每个客户端可能请求的路径后面都包含这个session id

       人们以为:“把浏览器关闭了,session就消失了”其实不对,除非程序通知服务器删除一个session,否则服务器会一直保留,而程序一般都是在用户作log off的时候发个指令去删除session。人们之所以会产生这种错觉,是因为大部分session会采用cookie来保存session,而关闭浏览器后这个session就消失了,如果服务器设置的cookie被保存到硬盘上,或者使用某种手段改写浏览器发出的http请求头,把原来的session id发送给服务器,则再次打开浏览器,其实是可以再次找到之前的session id的。所以设置失效时间可以起到一定的保护作用。

    五,关于session的一些问题

    1, session何时被创建:不是在客户端访问时就被创建,而是在服务器端调用httpservletRequest.getSession(true)时才被创建。

     

     

    2, session何时被删除: A,程序调用httpSession.invalidate(),B距离上一次收到客户端发送的session id时间间隔超过了session的超时设置C 服务器进程被停止(非持久session

    3, 如何做到关闭浏览器同时关闭session 严格说做不到,可以让所有的客户端页面使用window.onclose来监视浏览器的关闭东西,然后向服务器发送一个请求来删除session,但是对于浏览器崩溃或者强行杀死进程时仍然无能为力。

  • 性能测试中如何定位性能瓶颈

    andyfly_001 发布于 2011-03-19 00:22:12

    以下摘录性能测试定位瓶颈的经验分享:

    --------------------------------------

    性能测试的概念是什么,基本目的是什么,我想大家都基本清楚,不作详述,总之,性能测试只是测试过程中的一种方式,帮助我们的功能更好的运行,如果功能测试是可用,易用,满足需求、用户使用为目的,性能测试无非就是让这些目的更流畅。没有什么专业的概念,无非实现两个字:好用!
        所以,性能测试这种测试方式在发生过程中,其中一个过渡性的工作,就是对执行过程中的问题,进行定位,对功能的定位,对负载的定位,最重要的,当然就是问题中说的“瓶颈”,接触性能测试不深,更非专家,自己的理解,瓶颈产生在以下几方面:
    1,网络瓶颈,如带宽,流量等形成的网络环境
    2,应用服务瓶颈,如中间件的基本配置,CACHE等
    3,系统瓶颈,这个比较常用:应用服务器,数据库服务器以及客户机的CPU,内存,硬盘等配置
    4,数据库瓶颈,以ORACLE为例,SYS中默认的一些参数设置
    5,应用程序本身瓶颈,
    以上几方面分别唠叨几句
          针对网络瓶颈,现在冒似很少,不过也不是没有,首先想一下如果有网络的阻塞,断网,带宽被其他资源占用,限速等情况,应用程序或系统会是什么情况,针对WEB,无非是超时,HTTP400,500之类的错,针对一些客户端程序,可能也是超时,掉线,服务器下发的,需要服务器返回的信息获取不到还有一种更明显的情况,应该就是事务提交慢,如果封装事务的代码再不完善,一般造成的错误,无非就是数据提交不完整,或者因为网终原因+代码缺陷造成重复性提交。如此综合下来,肯定是考虑网络有瓶颈,然后考虑网络有问题时,怎样去优化,是需要优化交互的一些代码,还是接口之类的。
          应用服务的瓶颈的定位,比较复杂,学习中,不过网上有很多资料可以参考的。一般像tomcat,weblogic之类的,有默认的设置,也有经过架构和维护人员进行试验调试的一些值,这些值一般可以满足程序发布的需要,不必进行太多的设置,可能我们认识的最基本的就是JAVA_OPTS的设置,maxThreads,time_out之类的参数我们做借助LR,Jemeter或webload之类的工具,执行性能测试,尤其是对应用服务造成了压力,如果应用服务有瓶颈,一般我们设置的log4j.properties,日志都会记录下来。然后根据日志,去进一步确定应用服务的问题
          系统瓶颈,这个定位虽说比较复杂,但是有很多前辈的经验值参考,不作说明,相信用LR的同行,也可以从性能记数器中得出一些指标值,加上nagios,cacti,可以很明显的看出系统哪些资源够用,哪些资源明显不够用。不过,一般系统瓶颈的造成,是因为应用程序本身造成的。关于这点儿的分析和定位,就需要归入应用程序本身瓶颈分析和定位了。
          现在基本所有的东东,都离不开数据库这个后台,数据库的瓶颈实在是不知道是什么概念,数据库管理员的工作,数据库管理员日常做的工作,可能就是有瓶颈定位的工作,比如:查询一下V$sys_event,V$sysstat,v$syssql之类的表,比对一下日常正常情况下的监控数据,看一下有没有异常等。其他方面,我也不是太了解。
          应用程序瓶颈,这个是测试过程中最需要去关注的,需要测试人员和开发人员配合执行,然后定位,我这儿做的大都是执行性的,比如会有脚本去运行,开发人员会结合jprofiler之类的工具,去看一下堆遍历,线程剖析的情况确定哪儿有问题。大致是这样,没有实际操作过
    ------------------------------------

    逐步细化分析,先可以监控一些常见衡量CPU,内存,磁盘的性能指标,进行综合分析,然后根据所测系统具体情况,进行初步问题定位,然后确定更详细的监控指标来分析。

    怀疑内存不足时:
    方法1:
    【监控指标】:Memory Available MBytes ,Memory的Pages/sec, page read/sec, Page Faults/sec
    【参考值】:
    如果 Page Reads/Sec 比率持续保持为 5,表示可能内存不足。
    Page/sec 推荐00-20(如果服务器没有足够的内存处理其工作负荷,此数值将一直很高。如果大于80,表示有问题)。

    方法2:根据Physical Disk 值分析性能瓶颈
    【监控指标】:Memory Available MBytes ,Pages read/sec,%Disk Time 和 Avg.Disk Queue Length
    【参考值】:%Disk Time建议阈值90%
            当内存不足时,有点进程会转移到硬盘上去运行,造成性能急剧下降,而且一个缺少内存的系统常常表现出很高的CPU利用率,因为它需要不断的扫描内存,将内存中的页面移到硬盘上。

    怀疑内存泄漏时
       【监控指标】:Memory Available MBytes ,Process\Private Bytes和Process\Working Set,PhysicalDisk/%Disk Time
    【说明】:
    Windows资源监控中,如果Process\Private Bytes计数器和Process\Working Set计数器的值在长时间内持续升高,同时Memory\Available bytes计数器的值持续降低,则很可能存在内存泄漏。内存泄漏应该通过一个长时间的,用来研究分析当所有内存都耗尽时,应用程序反应情况的测试来检验。


    CPU分析
    【监控指标】:
    System %Processor Time CPU,Processor %Processor Time CPU
    Processor%user time 和Processor%Privileged Time
    system\Processor Queue Length
    Context Switches/sec 和%Privileged Time
    【参考值】:
    System\%Total processor time不持续超过90%,如果服务器专用于SQL Server,可接受的最大上限是80-85% ,合理使用的范围在60%至70%。
    Processor %Processor Time小于75%
    system\Processor Queue Length值,小于CPU数量的总数+1

    CPU瓶颈问题
    1:System\%Total processor time如果该值持续超过90%,且伴随处理器阻塞,则说明整个系统面临着处理器方面的瓶颈.
    注: 在某些多CPU系统中,该数据虽然本身并不大,但CPU之间的负载状况极不均衡,此时也应该视作系统产生了处理器方面的瓶颈.
    2:排除内存因素,如果Processor %Processor Time计数器的值比较大,而同时网卡和硬盘的值比较低,那么可以确定CPU 瓶颈。(内存不足时,有点进程会转移到硬盘上去运行,造成性能急剧下降,而且一个缺少内存的系统常常表现出很高的CPU利用率,因为它需要不断的扫描内存,将内存中的页面移到硬盘上。)

    造成高CPU使用率的原因:
    频繁执行程序,复杂运算操作,消耗CPU严重
    数据库查询语句复杂,大量的 where 子句,order by, group by 排序等,CPU容易出现瓶颈
    内存不足,IO磁盘问题使得CPU的开销增加


    磁盘I/O分析
    【监控指标】:PhysicalDisk/%Disk time,PhysicalDisk/%Idle Time,Physical Disk\ Avg.Disk Queue Length, Disk sec/Transfer
    【参考值】:%Disk Time建议阈值90%


    Windows资源监控中,如果% Disk Time和Avg.Disk Queue Length的值很高,而Page Reads/sec页面读取操作速率很低,则可能存在磁盘瓶径。

    Processor%Privileged Time该参数值一直很高,且如果在 Physical Disk 计数器中,只有%Disk time 比较大,其他值都比较适中,硬盘可能会是瓶颈。若几个值都比较大, 那么硬盘不是瓶颈。若数值持续超过80%,则可能是内存泄露。如果 Physical Disk 计数器的值很高时该计数器的值(Processor%Privileged Time)也一直很高, 则考虑使用速度更快或效率更高的磁盘子系统。

    Disk sec/Transfer 一般来说,该数值小于15ms为最好,介于15-30ms之间为良好,30-60ms之间为可以接受,超过60ms则需要考虑更换硬盘或是硬盘的RAID方式了.

    ---------------------------------------------

    Average Transaciton Response Time(事务平均响应时间)随着测试时间的变化,系统处理事务的速度开始逐渐变慢,这说明应用系统随着投产时间的变化,整体性能将会有下降的趋势
    Transactions per Second(每秒通过事务数/TPS)当压力加大时,点击率/TPS曲线如果变化缓慢或者有平坦的趋势,很有可能是服务器开始出现瓶颈
    Hits per Second(每秒点击次数)通过对查看“每秒点击次数”,可以判断系统是否稳定。系统点击率下降通常表明服务器的响应速度在变慢,需进一步分析,发现系统瓶颈所在。
    Throughput(吞吐率)可以依据服务器的吞吐量来评估虚拟用户产生的负载量,以及看出服务器在流量方面的处理能力以及是否存在瓶颈。
    Connections(连接数)当连接数到达稳定状态而事务响应时间迅速增大时,添加连接可以使性能得到极大提高(事务响应时间将降低)
    Time to First Buffer Breakdown(Over Time)(第一次缓冲时间细分(随时间变化))可以使用该图确定场景或会话步骤运行期间服务器或网络出现问题的时间。
    ----------------------------------------------
    碰到过的性能问题:
    1.在高并发的情况下,产生的处理失败(比如:数据库连接池过低,服务器连接数超过上限,数据库锁控制考虑不足等)
    2.内存泄露(比如:在长时间运行下,内存没有正常释放,发生宕机等)
    3.CPU使用偏离(比如:高并发导致CPU使用率过高)
    4.日志打印过多,服务器无硬盘空间

    如何定位这些性能问题:
    1.查看系统日志,日志是定位问题的不二法宝,如果日志记录的全面,很容易通过日志发现问题。
      比如,系统宕机时,系统日志打印了某方法执行时抛出out of memory的错误,我们就可以顺藤摸瓜,很快定位到导致内存溢出的问题在哪里。
    2.利用性能监控工具,比如:JAVA开发B/S结构的项目,可以通过JDK自带的Jconsole,或者JProfiler,来监控服务器性能,Jconsole可以远程监控服务器的CPU,内存,线程等状态,并绘制变化曲线图。
    利用Spotlight可以监控数据库使用情况。
    我们需要关注的性能点有:CPU负载,内存使用率,网络I/O等
    3.工具和日志只是手段,除此之外,还需要设计合理的性能测试场景
    具体场景有:性能测试,负载测试,压力测试,稳定性测试,浪涌测试等
    好的测试场景,能更加快速的发现瓶颈,定位瓶颈
    4.了解系统参数配置,可以进行后期的性能调优

    除此以外,还想说个题外话,就是关于性能测试工具的使用问题
    在刚开始用Loadrunner和JMeter的时候,做高并发测试时,都出现过没有把服务器压垮,这两个程序自己先倒下的情况
    如果遇到这个问题,可以通过远程调用多个客户端的服务,分散性能测试工具客户端的压力来解决
    说这个的目的是想说,做性能测试的时候,我们一定要确保瓶颈不要发生在我们自己的测试脚本和测试工具上

    ------------------------------------------------------

          
  • 吐血之作,面试与招聘经验总结之二,招聘篇

    allenzgw 发布于 2010-04-16 13:16:25Digest 3

    好久了,写完这篇文章,感觉,内容是属于少部分人的,但是,这部分人对中国测试的未来影响却可能会比较大,因为作为招聘人员,他们在选择测试的未来。尽管看到,国内很多差距,但是,还是希望中国的测试行业,会越来越健康,希望这个讨论,能给招聘同仁们一点点不同的想法

    ================

    因为工作关系,自己有机会很早就接触面试过程,招聘新的测试人员,内部提拔管理人员,并且为了这个事情,如何在候选几个人之间做出抉择的时候也有不少的思想斗争,有些感悟,记录下来。

    现在想想,自己面试过的人,肯定要超过100人,面试过程,非常能够体现Interviewer的功力,面对不同的interviewee,问同样的一个问题,会有100个不同的答案,即使是相同的答案,回答的人的语气,表情,细节动作也会不同,这些肢体语言同样会隐含很多问题。怎么能从这些细节之中看到interviewee的区别,这就是功力!更深的功力在于,当别人有了不同的答案之后,你怎么继续问不同的问题,因为对于水平不同的人,你当然要问水平不同的问题,否则,怎么能看出他们的水平?如果面试高水平人员,问的好不好,人家会看出来的,他们会怀疑你们公司到底行不行,你到底懂不懂测试?所以,本身面试过程,一方面是考察候选人,另一方面,也在把自己公司的形象传递给候选人。这个过程很重要。因为对于真正的好人,人家能力强到,他在选公司,而不是公司选他,选公司,意味着起码两个条件:1,公司的待遇和知名度,2,公司里面相处的人,他以后的老板,他是否认同这个人,以有利于他以后的发展。如果他觉得你的水平不一定比他高,这个即使他进来了,你也可能没这个本事管理好。

    好,下面言归正传,一步一步开始。
    第一,招聘目的。一样的,要搞清楚,你们这次招聘,要招聘什么样的人。是哪个项目组招聘,那个项目组的特别需求在什么地方?比如对数据库功底要求比较高,还是业务要求比较多,或者性能测试之类的。但是这些都是特殊需求。一般,公司都是有特殊需求才开始招聘的,当然也有很多公司,会固定的招聘很多应届生,这个不做讨论。然而在特殊需求之上,我们必须定义一个基本需求,这个是组织层面的。我觉得很多公司可能都没考虑到这一点,但是,这个其实是挺重要的,你需要深入的观察你公司的文化氛围,会发现,公司有这么个文化土壤,特别适合孕育某些人,而,你招聘的时候最好招聘符合你的文化土壤的,否则不太适合成长,当然,除非你对你的文化土壤不满意。

    第二,组织层面的基本需求:
    1)企业文化需求:
    首先,组织领导需要对自己的文化有清晰的认识,要招聘什么样的人,这里主要从性格和行为方式上面来看的,比如,很多私企喜欢,踏实,能干活,任劳任怨,没有太多抱怨的人,简而言之他们喜欢“服从者”。很多比较好的外企喜欢,认证听取工作,有问题能主动提出,有自己观点,能够在压力下工作,善于沟通的人,简而言之,就我觉得,他们喜欢“聪明的服从者”。很多国企可能喜欢,比较会看到领导意图,眼睛比较活,说话办事比较圆滑的人。这里你就需要看到自己的组织,到底需要什么类型的人。这里也不是说什么类型的人好,什么样的不好,而是不同的组织文化需要不同性格的人。要是搞进来几个很不合文化的,长久留下来的可能行不大,而且会对管理者产生挑战。
    但是,是否说,就一定不要招聘这样的人呢?不一定!有时候,为了组织内部的改革,为了文化的更新,你就是需要几个特别有反叛精神的人,制造一个“鲶鱼效应”!所以说,这个因地制宜。但是,你本身想要建立怎样的文化氛围,精神上的工作环境,这个你自己必须清楚。比如,我就是为了找几个好好干活,老老实实挺话的,遵守规章制度的,那没关系,这种人多得是。你一面试就能看出来这个人是不是很活跃了。太活跃的,有思想的你不要就是了。

    2)个人素质需求:上面谈的是个性方面的,更重要的,除了个性之外,还有个素质问题。不同个性的人,可能都有差不多的素质,这个素质,是指:学习能力,沟通能力,思考能力,工作能力。也就是说,有的人不爱说话,有的人很活跃,但是这不妨碍他们的学习能力,可能基础都很好,学习新东西都很快。这些东西,我们要有整体考量。当时我招聘的时候,我就首先观察我现有整个团队的人员素质问题,然后,根据平时的绩效考核,还有自己的观察,找出2,3个素质比较平均的人,以这个人作为标准。招聘的时候,我就回想,如果以这个interviewee和我的这2,3个人做比较,如果,光考虑他们的素质,不考虑经验,我是否会选择他们,如果答案是“yes”,这个基本上我就考虑要这个人了。以为他的到来只会让我们整个团队的素质提高,而不是下降,否则,导致我团队平均素质的下降,我要这个人干嘛?

    以上两者,个性+素质,作为基础需求,不过,这是个动态变化、渐进明细的过程,因为,首先你对组织文化的认识,还有方向的认识是逐渐深入的,其次,整体团队的素质应该在你的这个文化的影响下是逐渐提高的,如果不是的话,你需要思考你的团队文化了,需要思考是不是自己不称职?是不是要把自己换掉了哦,呵呵。

    第三,是项目或者某次招聘的特别需求,这个,基本上是技术方向上的特别需求。招聘的时候特别把握一下就好了,比如英语要求特别高的,或者需要性能测试的。但是,就我觉得,如果可以,尽量把这个人的这些特别需求建立在刚才所说的基础需求之上,最好这个人是适合前面所说的文化土壤的成长的,如果可以最好这样,不行,再求其次,并且考虑让这个人接受公司的文化。

    上面两点之所以如此强调文化,我是想说,无论招聘还是应聘,目光都要放长远,不要那么在乎短期利益,把一个人骗进来了,那只是短时间的,没什么意思。有些公司不错,但是,有些人就是不适合这个公司,不喜欢你们这个所谓的好公司的氛围。比如Huawei,我周边,有不少人都不喜欢这个公司,尽管他待遇相当不错,但是,他就是不喜欢,不喜欢他们对事情的看法,不喜欢做事情的风格,不喜欢拼命的那股劲。尽管很多人很赞美这个床垫文化,但是,他不喜欢,你要是不告诉他,看他能力强,硬是把他来进来了,也没太多意义的,反倒是会破坏你文化的凝聚力。当然我不是说华为不好,总体来说,在全球,华为做出来的成绩是中国企业中非常难得的。
    另外其实有很多企业,压根也没啥真正的,值得深掘文化内涵在里面的话,其实作为领导的需要仔细琢磨一下了,一个好的领导带出来的团队,是应该在上面有他自身无法磨灭的痕迹的。

    第四,招聘面试过程
    1)面试人数比例.首先仔细挑选一下简历,选择出所需人数150%-200%的人来面试。选择面尽量广一点,很多人很有本事,只是简历写的不好,或者只是不够好好表达,这部分人不能漏掉。给他们个机会,并且让他们能表现出他们的能力。当然怎么能让他们表现出他们的能力,这个就看interviewer了。

    2)先观察不急于判断。招聘过程有个东西很重要的,一般,如果2个人,或者3个人一起来做interviewer的话,尽管很多人说,一般前3分钟,就能看出来是否要这个人了,但是,如果你可以,请尽量不要在这3分钟之内做出判断,尽量延长到10分钟,因为,前几分钟一个人的表现,波动很大,往往情绪都没稳定。这时候的判断是有偏颇的。另外,尽量,不要在当场做出判断,而是主要记录这个过程,如果按照七顶颜色的帽子的说法,应该是“白色思维”,客观的思维,然后,面完之后,3个人再合计一下,每个人对这个被面试者的观察,然后根据这个客观观察做自己的推理判断。这个非常重要,可以参见《七顶颜色的帽子》这本书。

    3)面试过程的判断:首先基于公司文化需求来判断,在基于公司本次招聘需求来判断,如果前期的需求做得好,现在的判断也跟容易。另外作为一个高素质的interviewer,我时常提醒自己,要荣辱不惊,保持一颗平静的心,O(∩_∩)O哈哈~,不过,我说的也是事实。因为有一次,一个很丑的人过来面试,当时,我们3个人在面试,一见面,吓了一跳,那个男的,真的很丑。星爷电影里面有个叫如花的,不过,不是那个胖如花,而是那个做过什么生发水广告的,那个如花,真是,跟他差不多。虽然我当时感觉,我根本就不想看他,但是,当他回答问题的时候,我还是让他看出,我在看着他,并且期待他的回答。不过,很囧的时,这10分钟时间,另外两个面试官,竟然都是低着头,而且基本不说话……我很囧。尽管最后没有录取他,但是,并不是以他的容貌作为判断的。现在想想,幸好,他技术不是很好,我并没有觉得良心上有啥挣扎,否则,又是个tough  question了。 

    强调:如何判断一个有争议的,重要角色的人物?这个Jack Welche做过详细的探讨,不过,我想说的是,这个一定要问自己的那颗心,一定要让自己真诚的说服自己,能够录用这个人,而不是要努力说服别人录取他。而且这个非常消耗面试官的功力。我以前自以为自己看人能力还不错,基本上面试一个重要的人,需要30分钟左右,但是后来换公司之后,看见我们老板面试,差的3分钟,好的20分钟,那个真是快啊。可是,尽管很快,但是把人招聘进来之后,能看到基本都还可以,差距不大。但是,我再后来看到另外一个公司,招聘的水平就很有限了,特别是对经理人员的招聘,几乎只看简历,不看人!很多的经理的管理水平相当的差,不少事情安排不合理,很多员工也都不愿意在他手下工作,当然这个判断也是基于,默认我是一个合格的经理人基础之上判断的。招聘一个错误的经理人,绝对可以抹杀前面你大部分的功绩。在好公司,很大部分员工的离开,都是因为自己的boss。


    4)面试官的私心。其实这个也不是难得,关键是,当作为男人的你,遇到美女了,你该怎么办?你会不自觉的多面试一会吧?不自觉的,放低标准吧?能让她进来就尽量让她进来吧?而丑女,你就是能不让她进来就不让她进来了吧?O(∩_∩)O哈哈~,如果,小美女进来了,你孤独已久,漂流已远的心,是不是又再一次焕发生机,是不是在想可以再一次停靠港口了呢? 所以,其实面试别人的过程,也是面试自己的过程,也是面对自己内心的灵魂的另一面的过程。看看你是否为会用自己的权利来交换那点阴暗的私利的过程,如果交换了一次,你是否,会在以后做出更大交换的过程。 当然从候选者的角度看,你完全可以利用面试官的私心来达到你自己的目的,呵呵...

    5)面试过程,如何问问题?如何看出这个人的能力?有些人,面试的时候,表现的很好,能说会道,很配合,表现的很积极,也很合作,但是近来之后,发现似乎不是这样,会不懂装懂。这个,其实,有很多,特别是技术能力,在面试阶段就是可以面出来的,可以发现问题的,而不是等到近来之后才发现不行。怎么面试呢?面试问问题,最好一个问题套一个问题,一个问题深入一个问题,直到问出这个人不明白的,不懂得为止,如果没有不懂,而且回答的很清晰,那说明这个人的确很强。而,同时,如果这个人刚开始的几个问题有欺骗的成分在里面,你几个相关的问题一深入,就会暴露出前面的谎言了。问题,本身的设计,最好是开放的,可以深入的。如果是另外一些非技术问题(有些技术问题也可以),可以问些,比较有争议的,比较能仁者见仁,智者见智的问题,而不是答案非常确定的问题。我们的目的透过这些问题,要看到这个人的思维过程是怎样的,逻辑性是不是很强,在我眼里,思路正确要远大于答案正确。透过这个过程也可以看到这个人的世界观,是善良的,是相对自私的还是比较乐于合作的。所以,看人,主要从有争议的问题中看,而不是听他直白的说。

    第五,面试之后,进公司之后的进一步判断。当然,这个本不属于招聘过程了,但是他是这个过程的延续,因为,本来招人,是有个考量的,后续的过程也是这个考量的一部分。你对整个团队需要有个布局,不同的人,根据他们自身的特点,有你作为领导人的布局,当然,这个人是否合适,最好的方法就是,就我自己的感觉,就是放给他们权利。看看,权利是否会毁了这个人,是否会成为权利的奴隶。当然,能够好好利用权利,并认真对待职责的人太少了。好好驾驭他们,给他们犯错误的机会,给他们鼓励,也给他们惩罚。最后这个过程反过来应该对前面招聘的需求,和对人的判断有个反馈,需要你仔细反思为何招聘了这样的一个人进来。又是一个PDCA。这个,很多内容,有机会以后再论述吧。

    ok, it is over!

    ======================

    这篇文章,很久以前就写了一半。明天,就是我在这个公司的最后一天了,离职之前的这个上午,伴着5年前买的Shania Twain的up专辑音乐,写完这篇文章,不知道,下次更新会在什么时候。也不知道自己的方向,是否能到达我理想的斯坦,就让这篇文章做一个路标吧。


  • PPT高手的制作思路

    月上百合 发布于 2010-03-23 15:34:22


    PPT高手的制作思路

    制作PPT需要思考的东西很多:思路,架构,版面,色调,详略,图片等等。即便是做了8、9年PPT的高手每次在做新PPT之前,还是会很头痛!

          网络PPT高手根据经验,总结了一些做PPT的流程,非常感谢分享:

    1、最开始什么都不要想,不要去查资料,也不要接触电脑,而是用笔在纸上写出提纲,当然,能简单的划出逻辑结构图最好了.越细越好.

    2、打开PPT,不要用任何模板,将你的提纲按一个标题一页整出来.(过去我就总是追求完美,首先搞摸板,花掉半个多小时,做的过程中不满意又修改,做完后又修改,甚至最后完全推翻—-伤神费力耗时!!)

    3、有了整篇结构性的PPT(底版/内容都是空白的,只是每页有一个标题而已),就可以开始去查资料了,将适合标题表达的内容写出来或从网上拷贝进来,稍 微修整一下文字,每页的内容做成带”项目编号”的要点.当然在查阅资料的过程中,可能会发现新的资料,非常有用,却不在你的提纲范围中,则可以进行调整, 在合适的位置增加新的页面.

    4、看看PPT中的内容哪些是可以做成图的,如其中中带有数字、流程、因果关系、障碍、趋势、时间、并列、顺序等等内容的,全都考虑用图画的方式来表现。 如果有时候内容过多或实在是用图无法表现的时候,就用“表格”来表现。实在实在是不行了,才用文字说明。所以,最好的表现顺序是:图–表–字。这个过 程中图是否漂亮不要在意,“糙”点没关系,关键是你用的图是否准确。

    5、选用合适的母版,根据你的PPT呈现出的情绪选用不同的色彩搭配,如果觉得office自带的母版不合适,自己在母版视图中进行调整,自己加背景图、 Logo、装饰图等。其实关于母版颜色的选择,这么多年,我也一直没有研究透彻,据说不同的颜色会给人带来不同的感情冲击,专业的书讲的都是些狗屁理论, 不就是情绪吗?我就按自己的情绪来定了。当然,如果是有公司自己的标准模版,就不用费这些工夫了,直接用之。

    6、在母版视图中调整标题、文字的大小和自体,以及合适的位置。

    7、根据母版的色调,将图进行美化,调整颜色、阴影、立体、线条,美化表格、突出文字等。注意在此过程中,把握整个PPT的颜色不要超过3个色系!否则你的PPT就显得特别乱而且“土”!

    8、美化页面,看看哪里应该放个装饰图,图片可以从网上找,建议用GOOGLE的图片搜索(用英文最好),装饰图的使用原则是“符合当页主题,大小、颜色不能喧宾夺主!”

    9、最后在放映状态下,自己通读一遍,哪里不合适或不满意就调整一下,修改错别字!

    10、你以为这就完了吗??没有!注意错别字!(上一步你已改过了,但不够!你自己做自己查的正确率并不高),你知道吃饭的时候,饭里有只苍蝇是什么感觉 吗?就是看PPT时看到错别字时的感觉!而且读者一般是老板或客户,会非常怀疑的专业精神和工作态度,前面99%的工作已经做的非常不错了,但你的给读者 印象却可能毁于这1%的失误上!因此,将PPT给你的同事或者朋友检查一下,如果文件很重要,建议给2-3个同事检查。

    密技真言:

    尽量用1种字体,最好不要超过3种
    PPT的灵魂—-“逻辑!”
    PPT的恶心—-“错别字等于苍蝇”
    3色原则:“不要超过3种色系”
    6字解码:“大化小,小化图”—-提纲时,用逻辑树尽量将大问题分解成小问题,小问题用图表现。
    12字真言:“能用图,不用表;能用表,不用字”
    只要掌握如上原则,PPT肯定不会很“糙”或“土”,而且具有专业精神!

  • PPT制作十大绝招

    月上百合 发布于 2010-03-23 15:35:52

    绝招一:文字是用来瞟的,不是读的

          我们时不时听到这样的言论:“PPT很简单,就是把Word里的文字复制、粘贴呗。”这其实是对PPT的一种无知与亵渎。如果直接把文字复制粘贴就能达到演示的效果,PPT根本就没有存在的必要了。
          PPT的本质在于可视化,就是要把原来看不见、摸不着、晦涩难懂的抽象文字转化为由图表、图片、动画及声音所构成的生动场景,以求通俗易懂、栩栩如生。

    形象,至少能给你带来三方面的感受:
        一是便于理解。
          文字总是高度抽象的,人们需要默读、需要转换成自己的语言、需要上下联想、需要寻找其中的逻辑关系;但人们看电影就轻松许多,只需要跟着故事的发展顺理成章地享受其情节、体味其寓意就行了。PPT就是要把这些文字变得像电影一样生动。
        二是放松身心。
          如果把一本小说贴在墙上,相信你看半个小时就会腰酸背痛;如果把小说拍成电视剧,也许你看上一天也不觉得疲惫。就是这个道理。
        三是容易记忆。
          传统的PPT,你需要观众记住的是文字,这个难度太大了,即使记住了也很容易忘记;而形象化PPT,可以让观众轻松记住其中的图形、逻辑或结论,也许三五年后,人们仍然能够记忆犹新。
          改变那种“复制、粘贴”的做法吧!把那些无关紧要的内容大胆删除,把长篇大论的文字尽量提炼,也许刚开始你不习惯,也许你做得还很粗糙,别放弃,总有一天你会让观众赞不绝口的。
          有的领导会问:“如果PPT没有文字,你让我讲什么?”的确,演示习惯的改变不是一朝一夕的事情,这依赖于演示者对内容的熟悉程度和演示技巧的掌握程度,但有一点,带着观众读文字是演示的大忌,杜绝这一条,演示效果会逐步得到提升。
    所以,提出了两个观点:
    1、文字是用来瞟的,凡是瞟一眼看不清的地方,就要放大,放大还看不清的,删!
    2、文字是PPT的天敌。能减则减,能少则少,能转图片转图片,能转图表转图表。

    绝招二:20分钟是快乐的极限

          传统上,我们总是认为,讲得越多,时间越长,越体现出演示者的重视。这是计划经济时代的标准。现在,无论我们的领导、客户还是普通的受众,时间都极为宝贵,没有人愿意阅读动辄数百页的研究报告,也没有人去听你的长篇大论。浓缩的才是精品!
        演示的核心内容是什么?观点!
          在此基础上把观众容易困惑的地方、你认为重要的地方作一些说明。永远不要担心你的演示过短,如果花费20分钟就能够把一天才能了解的内容讲清楚,你实际上为观众节省了7小时40分,在时间就是金钱的年代,观众当然求之不得。
          简短的另一个好处是意犹未尽。如果你的演示足够精彩,会给观众留下更多的期待和回味,甚至会有人要求把你的PPT拷回去好好研究几遍呢。
          简短,也对PPT提高了要求。你需要了解哪些内容是观众最关心的,哪些内容是非讲不可的,哪些内容是能带来震撼的,据此,该合并的合并,该删减的删减。也许,这是一个反复的过程,但标准只有一个:不要让观众有打哈欠的时间。

    绝招三:清晰比什么都重要

    PPT有一个致命的弱点——观众容易迷失思路。
    为什么?
    一、PPT毕竟不是电影,其逻辑结构是抽象的,难以把握;
    二、PPT是一页页翻下去的,一次只能看一页内容,前面看过的只能依靠记忆。
    解决的办法有两个:
    一是事先给每位观众发一份演说纲要;
    二是给你的PPT建立清晰的导航系统。
    导航系统主要包括
    一、从片头动画、封面、前言、目录,到切换页、正文页、结尾页等一套完整的PPT架构(本书第3章将详细介绍);
    二、每页都有标题栏(除了标明整个PPT的标题,更重要的是标明本章节的标题、本页的主题);
    三、页码,如果方便的话也尽可能加上。

    绝招四:没有设计就等于垃圾

          传统上,我们把PPT归结为办公处理之类的工具,认为只要简单排版就可以满足需求。
          随着整个社会审美标准的提升,这一观点正被越来越多的人抛弃。PPT,特别是对外PPT,正成为公司形象识别系统的重要组成部分,代表着一个公司的脸面;设计,正成为PPT的核心技能之一,也是PPT水准高低的基本标准。
          无论是汇报、宣传还是比赛、竞标,一个设计精美的PPT最少可以起到以下作用:
    (1)让观众赏心悦目:美女养眼,精美的PPT养神。
    (2)让观众产生好感:爱美之心人皆有之,漂亮的PPT自然能让观众多看几眼。
    (3)赢得观众的信任:人总是有偏见的,精美的设计给人专业、认真、可靠的感觉,内容的含金量也自然得到提升。
    (4)赢得成功的机会:在职场上,美女与帅哥有更多成功的机,PPT演示也是如此。
          内容的好坏难以评价,但形式的优劣却显而易见,喜欢而又信任的方案自然是领导和客户的首选。
    设计非一日之功,但我们可以找到捷径:
    (1)善用专业素材:专业的PPT模板让你的PPT拥有外在美;专业的PPT图表让你的PPT
    具备内在美;专业的PPT图片(包括JPG、PNG、AI等格式)让你的PPT充满生机。
    (2)掌握排版的基本原则:每个人的审美标准是不同的,但总有一些规律是相通的,掌握并遵守这些规则,将使你的PPT设计得到大多数人的认可。这些规则包括:一个中心、合理对齐、画面统一、强烈对比、层次分明等,本书第6章将详细讲述。
    (3)多看精美案例:PPT诞生以来的十多年里,整个社会的设计水准都在迅速提高,三人行,必有我师,在平面设计、动画领域,处处都有值得我们学习的案例。

    绝招五:炫不是动画的根本

    自PPT诞生以来,动画就一直是最大的争议。
    一 种观点认为,PPT就是幻灯片,就是一页一页翻过的图片加文字,在商务PPT应用领域,根本不需要动画或者最多只需简单的页面切换动画; 相反,有无数的仁人志士对PPT动画矢志不渝,用自己的创意和努力一次次创作动画的传奇,也得到众多PPT爱好者的欢呼雀跃。
    近年来,锐普PPT把PPT动画成功应用到商务领域,并得到客户的广泛认同。
    动画,不仅仅让PPT变得生动,更能让PPT表现效果数倍提升。
    (1)片头动画
    让 你的PPT一把抓住观众眼球。电影有片头、游戏有片头、网站有片头,PPT演示也需要片头。演示开始时,观众往往会需要一个适应期,也许 还在想着刚才没有处理完的工作,也许还在跟邻座侃侃而谈,也许还在抱怨着观看演示的辛苦,这时候,你需要立即把观众的视线聚焦到你的演示中来,精美和创意 的片头能立即给观众带来震撼,让观众目不转睛。
    (2)逻辑动画
    一幅静止的画面,观众会 自上而下全面浏览,缺乏逻辑的引导,观众难以把握重点,看完之后还要思考其中的逻辑关系,实际上浪费了精力和注意 力;如果给这幅画面加上清晰的逻辑动画,就把观众自己找线索变成了帮观众理线索。演示者可以控制对象出现的先后顺序、主次顺序、位置改变、出现和退出等, 引导观众按照自己的思路理解PPT内容。
    片头动画让对外宣传的PPT尽显企业的专业与实力。一束光闪过,该公司的logo由轮廓逐渐变得靓丽十足,让人记忆深刻;紧跟的4张动画页面从不同角度展现了上海及该公司的风貌,同时配以连续抽象的文字和动画效果,消除了页面之间的分割感。
    (3)强调动画
    以 往我们只是用颜色的深浅、形状的大小以及字体的不同来突出某些重要内容,这有一个很大的弊端,就是要强调的内容会一直处于强调地位,当我 们讲述别的内容时,它会分散观众的视线;强调动画,通过对象的放大、缩小、闪烁、变色等动作实现强调效果,并能够让演示者自如控制,强调过后自动回复到初 始状态。
    (4)片尾动画
    与那些戛然而止的PPT相比,加一个简单的片尾动画将收到意想不到的效果:
    一是作为礼貌,提醒大家演示结束,并给人一定的缓冲时间,准备接下来的活动;
    二是与片头动画相呼应,做到有始有终,避免给人虎头蛇尾的印象;
    三是通过贯穿始终的形式,提醒观众回忆内容,强化记忆。
    (5)情景动画
    也许你讲述的就是一个故事,故事总是有情节、有过程的,而要用一张静止的画面去表达一个完整的过程,几乎不可能。相反,一套连续的动画,则能把这些过程表现得栩栩如生。以往,我们用Flash、视频来表现这些效果,PPT其实也能够实现。

    绝招六:图表是PPT的筋脉

          商业演示的基本内容就是数据,于是图表变得必不可少。最早出现的是柱图、饼图、线图、雷达图等;咨询公司把数据图表转移到对逻辑关系的表达 上,于是出现了并列、包含、扩散、综合、层进等各类关系图表,从此,文字也可以不再抽象、乏味了;以ThemeGallery为代表的韩国公司、以 PresentationLoad为代表的欧美公司以及以锐普PPT为代表的中国公司等设计公司,则进一步把这一趋势发挥到极致——加入了设计的概念,从 此,文字可以变得像图画一样精美、形象、栩栩如生。
          同样,PowerPoint软件就像天生为图表而生的,强大的像Illustrator一样的绘图功能,加上清晰的操作界面、简单的操作模式,让人人都能轻而易举地掌握。很快,PPT图表就风靡全球,与图片配合使用,让演示如虎添翼。
          如果你的PPT还在受大段文字的困扰,还在为逻辑混乱而发愁,那就赶快学习PPT图表吧。

    绝招七:没有策划就没有精品

          好的PPT是策划出来的,就像宏伟的建筑是规划出来的。
          所有的PPT设计师者首先是策划师,有的是无意识为之,有的是用心去做的,但没有策划的PPT必定是失败的作品。不同的演示目的、不同的演示风格、不同的受众对象、不同的使用环境,决定了不同的PPT结构、色彩、节奏、动画效果等,PPT的人介于观众、领导、演示者等多重标准的审视。
    一个好的PPT作品基于对以上要求的准确把握。
          我们曾经有一些卓越的设计师,出来的作品很美、很耐看,但却一直得不到客户的认可,为什么?就是缺乏准确的策划。美,不是PPT的唯一标准;经验、用心、设身处地为观众着想,即使画面有瑕疵,也往往能赢得演示者的认同和观众的喝彩。

    绝招八:PPT可以当主角

          西方有一种观点开始在中国流行:演讲者永远是主角,PPT不过是陪衬。
          其实这完全是站在西方立场上的一种观点,未必适应中国国情。西方人大多喜欢张扬,擅长演说,甚至在很多人看来演说已经是一种享受,当然不愿意被PPT抢了风头;但中国文化更强调内秀,不愿意抛头露面,擅长演说者更是寥寥,甚至连一些领导在众人面前也不愿张扬,何况一般人?所以,我们常常把自 己作为的一员,是我们代表演说,我们不过是一种符号,低调再低调,宁可把PPT作为众人瞩目的焦点。
    从另一个角度讲:我们是为了演示而演示吗?是为了表现自我吗?
    当然不是!每次我们都是抱着一定的目的进行演示的,或者为了让观众了解我们的工作,
    或者为了让观众选择我们的产品,或者为了沟通一些信息,或者纯粹为了博得大伙一乐……能找到必须让我们成为主角的理由吗?
    没有!
    效果为王,只要能达到目的,不要在乎谁是主角、谁是配角。
    如果你是一位表现欲极强的演说大师,如果这是一个需要你展示自我的舞台,那你就勇敢地站出来,做主角吧!
    如果你是一位稍微内敛的工作者,为了工作才进行这次演示,或者这是一个需要低调的场合,那就不必拘泥于大师们的说教,即使你是配角,也能得到最热烈的喝彩。

    绝招九: PPT不是哑巴

    在很多人眼中,PPT是多媒体的代名词。但这个多媒体,却一直因为无声而名不副实。
    细分析,无声原因有三:
    一是PPT的商务特点限制了声音的应用,毕竟在商务会议场所,人们需要集中精力思考,无论是背景音乐还是动画声音都会给人们带来干扰;
    二是PPT软件设计的功能限制了声音的应用,PPT软件生下来就没有为声音的应用做好充分准备,仅仅了这一功能,对声音的编辑、优化等功能,PowerPoint还无心顾及;
    三 是PPT人群实在太广,经理、文员、老师、销售代表、老总、领导、甚至一些小学生都成了PPT技术员,大家相关的知识储备远不够,缺乏声 音素材、缺乏声音感觉、缺乏声音编辑的技术,但不知不觉中,有人还是尝试起来,结果声音应用不专业,特别有些动作声音常常引来观众一阵哗然。于是,有人总 结了,PPT勿用声音。
    果真这么绝对吗?
    形势正在悄悄变化,PPT有声时代正在来临。
    (1)PPT早已不再限于汇报演示,企业宣传、婚庆礼仪、休闲娱乐等正成为PPT应用的热点领域,声音是不可或缺的元素。
    (2)平面设计、flash、视频等时刻冲击着人们的视觉,人们正经受着最严重的审美疲劳,单纯靠画面给人的刺激已经大大降低,声音是增强画面冲击力的绝佳武器。
    (3)PPT设计公司的崛起,让PPT声音的处理专业化,声音素材库搭建起来,各类声音编辑软件应用自如,配音设备逐步完善,PPT中声音运用的规律也已经把握到位。

    绝招十:退“三”进“七”

    要让PPT高人一等有很多方法,率先使用PowerPoint 2007,无疑是最有效的捷径。
    从PPT专业应用角度看,PowerPoint的以下特点都是我们极为推崇的。
    (1)操作界面更美观、更人性化
    ● 全新的vista般操作界面,让人赏心悦目;
    ● 对文件整体管理的功能集中到左上角的offi ce按钮里,为操作区留出更大空间;
    ● 操作区域更开阔、归类更合理,操作熟练后一目了然;
    ● 自定义按钮非常个性化,把常用的功能放在这里调用更快捷;
    ● 选择窗格与Photoshop 窗格类似,“层出不穷”成为现实,使PPT各项功能全面提升;
    ● 放大/缩小按钮与视图模式按钮同时放置于右下角,更适应一般人的操作习惯。
    (2)绘图和设计功能更强大
    (3)丰富而实用的功能集群
    这些功能包括:
    ● SmartArt图表,可以把文字轻松转化为图表。(只是目前所的图表种类较少,质感过于单调,从设计的角度并不主张过多应用。)
    ● 为PPT文件减肥,2007版的PPTX格式的文件比2003版的PPT格式文件小了很多。
    ● PPT可以直接转为pdf、xps、jpg等格式,并可把其中的部分PPT页面发布出来,供各类场合使用。
    ● 有效防止文档崩溃,在2003版里一旦文档出错,没有保存的数据都会丢失;2007版则能够尽力恢复程序关闭前的状态。
    但2007版也存在一些明显的遗憾:
    其一是对电脑硬件要求较高。不少学员反映,500MHz以下的处理器、256MB以下的内存的电脑用起来都较吃力。
    其 二是与2003版的兼容性不够。PPTX文档一般要转化成PPT文档或者安装插件才能在2003版的PowerPoint中读取。用 2007版所作的立体艺术文字、艺术图形在2003版中是无法编辑的,部分颜色渐变效果、阴影效果、文字效果,甚至一些动画在2003版里会发生变形,需 要在2007版里对照编辑。
    但这些缺陷改变不了2007版快速普及的趋势,要想实现超人一等的PPT表现效果,PowerPoint 2007无疑是最佳的选择。

    文章中观点来源于《PPT演义》一书中的总结,文章内容转载自且行资源

  • [转]某在外企工作三年的高手 给大家英语学习建议

    guofei318 发布于 2010-04-15 22:46:39

     

    转帖:在外企工作三年的我 给大家一些英语学习得建议和忠告 附送下载资料无数

        我的英语在大学就一直不行,勉强混过四级,只能说是碰巧读了研,英语怎么考过的我自己都没想明白。从毕业四年后基本都快把英语忘掉了。三年前因为一个特殊的机遇进入外企(美国 企业)工作以来,断断续续学了很久的英语。进展一直不大,也就是能看看技术书书籍,英文帮助而已。“听”、“说”、“写”比 没学过英语的人好不了多少。由于工作的需要,经常性的去参加培训自己感觉水平稍微提高了一点。最主要的是对学习英语的认识改 变了,学习方法改变了。
      有次有个老外对我说,英语是skill不是knowledge。我觉得这个总结得相当好,英语不是知识,只是一门技能。学习知识和掌握技能所用的方法是截然不同的。掌握技能关键是要用,用得多了自然就掌握了。但同时也要讲究方法。就象学游泳一样,好的老师用正确的方法教,那肯定比自己瞎扑腾要学得快学得好。
      想起以前总是傻傻的背单词,还自己写了程序背。其实单纯背单词的学习效果是很差的。远不如背句子及短文。
      练习听力我个人觉得钟道隆的逆向英语见效最快,尽管刚开始时很难坚持。它的方法就是听写,一边听一边把听到的内容写下来 ,没听清楚就一句句反复,至于听什么倒无所谓,自己根据自己的水平找适当的就行了。这种方法强迫你听懂每一个词,包括很多一 带而过的介词,连读等。坚持下来很容易见效。
      “说”,其实找老外对练是最好的了,但是有个问题是不是哪里都有老外,也不是谁都认识老外,前段时间发现一个练口语和听力的网站不错,下面网址推荐的第一个,我感觉不错。需要练习的朋友可以去看一下。
      写就没这么简单了。很多短语,或是语法,在阅读时都不是问题。可要在自己写东西的时候却什么也写不出来,全认得,就是写 不出。其实和练听力时是一个道理,最好是背诵一些短文。我记得以前高考之前,为增加写作能力,也有很多同学整本的背一些什么 优美文章集之类的。每天如果能用英语写写日记应该也是个好办法。(可惜我自己连写中文日记都坚持不下来。)
      另外记忆是一个不断重复,加深映象的过程。所以复习和复习的频度也是非常关键的。子曰:“学而时习之,不亦乐乎。”。只 学不复习其实是很笨的做法,这样做只会浪费了第一次的学习时间。
      所以为了更好的学习英语,更好的锻炼我的口语(工作性质决定我并不需要翻译工作,能和老外流利的对话才是在外企工作的根本,所以流利的口语在参加工作以后更为重要)。
       我找了一些学习英语的网站经行对比学习,发现下面这些网站不错,而且免费,推荐给大家 
    1.http://www.speak2me.cn/main/home/cn/member_register.php?uid=17810&code=b09a43d988ec8094ca5cd5c89fbf4a9b (免费学英语口语听力,大量免费课程) 
    2.http://www.ywhc.net/article/Index.asp(英文荟萃)(内含口语8000句)
    3.英语听力资源汇总http://www.hjenglish.com/subject/data/enlisten.htm
    4.http://www.hjenglish.com/doc/enlisten/511_1016.htm(英语听力mp3下载)
    5.http://www.4english.cn/(英语之声)
    6.http://www.52en.com/tl/(英语听力特区)
    7.http://www.putclub.com/(普特英语听力)
    8.http://202.114.65.51/fzjx/dmtjx/english/dxyyjd.htm(大学英语精渎听力下载)
    9.http://www.edgeenglish.com/(爱鸽英语)
    10.http://www.iselong.com/English/c/16index.htm(万千英语族)
    11.http://www.pass-e.com/sort.php?sortid=8(真题网)
    12.http://www.52en.com/(我爱英语网)
    13.http://www.nutshellsoft.com/(英语精华网)
    14.http://www.qjjj.net/(清剑精品资料)
    15.http://www.meno.com.cn/engexam/CET/Index.html(美诺学习网)
    16.大学英语四级考试听力MP3 100篇http://www.hjenglish.com/doc/enlisten/511_1017.htm
    17.http://wxy.studa.com/(学生大考试站)
    18.http://www.eduxue.com/kaoshi/english/a/(教育学习网)
    19.http://www.xy51.com/Article/eng/zszb/sti/(学程无忧)
    20.http://www.gooedu.cn/Article/en/zhuan4zhuan8/zhidao/(goo学网)
      
    在线外语电台:
    1.http://www.yyksw.com/index1.html(VOA、BBC等及外语电视台在线收看)
    2.http://www.mornstars.com/(BBC1-7、美国CNN)
    3.http://www.unsv.com/(英语学习频道)
    4.http://www.52en.com/tl/
    5.http://mwww.tingroom.com/flash/(VOA特别英语、VOA标准英语及英语电台)
      
    1.http://www.hjenglish.com/catalog/list.asp?cateid=611(许国璋英语教材下载、许国璋英语听力下载、许国璋英语文本、 许国璋四册文本单词语法)
    2.http://www.studa.com/newdown/soft/3323.htm(许国璋英语教材 (第一册到第四册))
      
    再附关于新概念英语的学习网站:
    1.http://www.ebigear.com/ResourceHtml/209/(视频)
    2.http://www.jqzxzx.com/yule/zxsp/200509/310.html(视频)
    3.http://www.fli.com.cn/Article_Show.asp?ArticleID=1035(需先注册—mp3)
    4.http://www.aceen.com/2j.asp?id=168(mp3)
    5.http://lz.qjjj.net/Article/czyy/dxyy/200511/Article_20051121191418.html(mp3)
    6.http://www.nutshellsoft.com/english/newconcept/index.htm(mp3)
    7.http://www.pass-e.com/article.php?articleid=759(mp3)
    8.http://www.wwenglish.com/en/pp/nce/index.htm(辅导学习)
      
    关于四六级英语的学习:
    1.http://www.pass-e.com/sort.php?sortid=8(真题网)
    2.http://www.52en.com/whbm/grammar/index.htm(我爱英语网)
    3.http://www.nutshellsoft.com/english/cet4/index.htm(英语精华网)
    4.http://lz.qjjj.net/Article/czyy/dxyy/200511/Article_20051130195428.html(清剑精品资料)
    5.http://www.meno.com.cn/engexam/CET/Index.html(美诺学习网)
    6.http://www.hjenglish.com/doc/enlisten/511_1017.htm(大学英语四级考试听力MP3 100篇)
      
    另附:
    1.http://www.aceen.com/list.asp?unid=3398(90个外国英文网站强力推荐)
    2.http://www.meno.com.cn/waiyu/ziliao/200507/989.html(英语学习网站超级大全)
    3.http://bbs.51legou.com/read.php?tid=12968(二十个学英语的网站)
    4.http://www.11de1.com/classs.php?classid=160(外语学习网址大全)

    再另附两个名人演讲网址:
    1.http://www.52en.com/yy/html/20050327_007.asp
    2.http://www.americanrhetoric.com/top100speechesall.html(美国历史上著名的100个演讲MP3及原文)
      在这里,你不仅能够看到原文,还可以亲耳听听马丁路德金的I have a dream的演讲,那可是真是震撼人心!
      新概念英语磁带MP3格式下载。 (速度不快)

  • 简谈管理工作

    sun9731 发布于 2008-11-06 14:27:38

    大家天天都在谈管理,如何管理。本人也做管理四年了,本日志就是对这四年得一个总结吧。

    做管理者分二种:一技术型管理者、另一种就是权术型管理。

    二者的区别,前者是以技术、实力服人;后者是以手段、玩权等方式服人。

    但还有一种人是权术型管理者打着技术型管理的牌子来管理。(也就我们常说的装NB的人)这种人我个人觉得应该不能算是管理者,应该算是小人。

    做管理者的必备条件

    不管是技术型管理者还是权术型管理者都得有几下共同点

    一是人格魅力:一定要有自己的人格魅力

    二是思路清晰:不管做什么事,计划、方案等要事先想好。思路要清晰明了。

    三是协调能力:要有高强的协调能力,沟通技能等

    四是执行、下达命令能力:如果你是中高层领导都这一条也是必不可少的。

    五是开拓、创新能力:要会总结,在总结的基础上进行开拓、创新。有些人有开拓、创新能力,但就是想出来点子或办法不服实际的工作情况,这开拓、创新能力也是等零。

    六是指导能力:给你的团队或组织要能正确指导、引导能力。

    其它还有许多,就不一一列出来,此处只列个人感觉比较重要的。

    如何开展你的管理工作

    一是计划:什么事都应该做计划。不管计划做的怎样,都应该有。计划中应该设定完成的目标、开始结束时间、人员、事件等

    二是方案:根据实际的事件给出相应的方案。比如我们常见的方案--测试用例。

    三是执行、下达命令:给你的团队、你的下属下达命令;其次是执行计划与方案。在执行的过程中会产生监督工作,其次是指导工作、协调工作。

    四是总结:一件事务完后,一定的总结。

    五是开拓、创新:根据总结,进行开拓和创新

    如何提高你的管理能力

    有些人做了8-10年的中层领导或小组长,自己的工作也很卖力,但就是升不上去。今天以我的观念来畅谈一下:

    一是没有顾大局能力或思想:这条也80%人都会犯的错误。他只想到自己、不顾其领导、下属的想法,这样的人很难提升。

    二是总与直接领导比较,甚至瞧不起直接领导者:如果你的直接领导真不如你,你也不应该去比较;更不要拿领导与其他领导去比较;其次是要尊重你的领导;如果他能当上领导,那他一定有他的长处。

    三是没有进取精神:自己到了一定位子,就不进取。很满足。这也是一大忌。

    其次是把握机会:当机会一来时,要及时把握。

    以上说得也不知对不对。总结上述,如果要提高你的管理能力,要随时有顾全大局;要尊重领导;服从领导;随时“充电”;再加把握机遇。

    今天就说到这里,我得开始工作了。下次再述

     

1942/10<12345678910>
Open Toolbar