如何挑选软件测试培训机构

老孙 发表于 2010-01-04 15:06 浏览次数:2,350 views 来源:
“圈外人”青睐软件测试

软件测试行业的巨大缺口吸引了众多求职者的目光,除了从业者外,“圈外人”对软件测试也表示了相当的认同度和满意度。这主要是由软件测试行业的特性决定的。首先,从目前市场需求来看,严重的供需失衡局面促使我国软件测试工程师基本上处于一个地位高、待遇高的“双高”地位;其次,质量是产品的灵魂,软件测试工作的重要作用,在软件产业中任何时候都是不可替代的,因而职业生涯更长久;再次,软件测试工作包含了技术及管理的各个方面,对年龄的要求也没有一定限制。因此,在竞争越来越激烈的IT职场中,软件测试工程师的工作相对来说更稳定、更有发展前景。
 
尽管期望加入软件测试行业者数量众多,然而能够达到企业需求的求职者数量寥寥。无论是有经验者还是无经验者,由于对软件测试缺乏系统的了解和足够的职业技能,均成为阻碍他们顺利进入的门槛。
 
机构选择要仔细

这些培训机构推出的培训各有特点,不能一概而论好坏,但如果要选择适合自己的培训,最好从以下几个角度来考虑。
 

选择培训机构,最首要的是选择讲师,说实在的,即使是完全一样的教材和讲义,不同的讲师讲出来,效果是完全不同的,因此非常有必要和你要加入班的讲师面对面谈一谈,看对方的资历和授课水平。如果对方只会夸夸其谈,没什么实际内容,或是只会照本宣科,基本上就不用考虑了。

选择培训机构要认准适合自己的课程。虽然所有的培训机构都会宣称自己的课程是最合理的,但是否真正适合自己是要打个问号的。一般的培训机构发布的公开材料上都不会有非常详细的课程大纲,因此一定要到培训机构找到详细的大纲看看。如果对方不能或是不愿提供详细的大纲,那就有问题了,因为这种大纲是培训机构必然会有的。

得到详细的大纲后要关注几点:
 
第一,课程中是否包括了完整的实践项目内容?如果没有一个完整的实践项目,或是只有一些零散的所谓的实际操作,这种课程的合理性就值得怀疑。
 
其次,课程中是否所有的内容都真正贴近测试?有些培训机构的课程中夹杂了大量的开发课程,而且还美其名曰“增加就业几率和择业范围”,实际上,如果培训机构对自己的测试课程培训出来的学员能否找到与测试相关的工作都心存疑虑,让人怎么相信?
 
第三,课程是否实用?如果纯粹的理论知识占据了大量的课程时间,这种课程一般就是所谓“空中楼阁”式的课程。
 
选择就业培训一定要选择行业内的专业企业,每个领域都会有不同程度的屏蔽,不可能在每个知识领域都是强者。

推荐课程:新科海学校软件测试工程师就业班————9月7日开班

如何选择Java培训?

老孙 发表于 2010-01-04 15:01 浏览次数:1,649 views 来源:

     找工作两个月了,现在it行业很好就业呀,薪水也挺高,北京的java培训水平比较高,大家帮我看看哪家的java培训有特色,出来好就业呀。

     选择java培训机构的标准主要就是这几条,按重要性依次为:

     项目,课程内容,师资,学费,教学环境。

项目:

     项目是选择java培训班的核心问题,选择项目就是在选择培训班。项目水平的高低直接关系到你项目经验累积的水平以及毕业后的就业方向,也可以直接反映了老师水平的高低。高水平的、与IT行业热门技术相关的项目经验非常有助于你将来的就业,甚至直接影响你的薪资水平。那么,我们如何去判断java培训机构项目水平的高低呢?

    项目不能太滥。

     很多java培训机构号称会在学习期间做到近十个项目,甚至多于十个的都有。这种蜻蜓点水式的项目根本无益于学员水平的提高。基本上每个项目都是介绍一下项目需求,做个框架,注册、登录,写个基本流程就草草了事,项目时间基本上就是四五天而已,每个项目基本都是重复劳作,糊弄学员,学员根本累积不到项目经验。再说,这种项目也根本拿不出手。将来去公司面试,人家问你做过什么项目,你一说十几个。再问问项目的具体细节,你肯定傻眼。

     项目一定得是真实的业界项目。

    很多java培训机构都称自己的项目是真实的案例,那么怎么判断他们有没有蒙我们呢?好办,他不是说真实的吗?如果是网站系统,总有个在线跑得吧。如果是企业管理系统,演示一下总可以吧。是骡子是马,拉出来溜溜。如果他们推三阻四,找各种借口推脱,好办,趁着钱还在自己口袋里,立刻闪人。

    项目一定要高水平。

    所谓的“高水平”无非就是指所用的技术是否高级、业界是否急需。大家都在用struts-hibernate-spring架构,这是热点,架构都一样,没啥说的。但是项目中是否包含了别的有用的业界流行的技术,比如搜索引擎技术,ajax,开源工作流等等,这才是判断项目水平高低的标准。如果项目是一个 OA项目,可是没有讲授开源工作流技术,而是写个简单的类,那就是在蒙人。如果项目中有全文检索,没有讲业界流行的Lucene,而是自己写个简单的分析类,那同样是在蒙人。总之,如果能在项目中学到更多的技术,而这技术又是业界急需的、流行的,那这项目就是“实在是高”,这样的培训班也值得去。

    项目一定要做的深。

    在有老师讲解,带领的情况下,将一个完整的项目深入的剖析,至少要有2-3周的时间。只有深入开发,才有助于学员全面深刻的理解项目的需求、技术,积累真正的项目开发经验。只有深入开发才能将企业开发中的一些问题展现给学员,将解决问题的方法教给学员,授之以渔,学员才能举一反三,完全适应以后的实际开发。蜻蜓点水式的项目开发除了浪费时间,对学员根本没有任何帮助。
课程内容

    基本上各个java培训机构的J2EE课程都是雷同的,大家都差不多。这一块可说的东西也不多。

师资问题

    大牌老师不见得就是"好老师",别把"大牌老师"当回事很多java培训机构的头牌老师,也就是天天被用来宣传的老师往往是不代课的,即使带也是最基础的课程。这就像我们大家高考报考时,老被那些大学的宣传蒙蔽,很多大学总是号称有多少科学院院士,基本上大学四年你都不会有缘一睹院士风采的,这些老头子基本与咱们凡夫俗子无关。呵呵,别把“大牌老师“当回事。

高手一般在创业型的小培训机构中可能存在。

    这些机构一般是几个在软件行业混了几年,技术比较精湛的人合伙开设。收费也较低。因为是老师自己的机构,也比较负责任。我就是在这样的小机构培训的,学到了不少东西。尤其是项目经验。受益无穷呀。

    判断java培训机构师资状况,主要是以带项目的老师的技术状况来衡量J2EE的课程虽然庞杂,但是知识都不难掌握,难点在项目经验的传授上面。一般的老师给学生讲授知识是没有什么问题的,讲的都差不多,都是照本宣科而已,无所谓水平高低。所以,判断java培训机构师资状况,主要是以带项目的老师的技术状况来衡量。不管培训机构如何吹他的那些老师了得,只要问清楚哪位大侠带项目就行了,这才是核心。项目老师水平过得去,就万事OK了。

教学环境:

     人数尽量不能太多,一定要小班教学,这是原则,否则与老师的沟通不畅,会直接影响项目经验的累积。

     地点可以偏点,坐公交,不超过1小时,就可以了。

     教学环境主要包括三个因素:班级人数,教学点位置,电脑硬件。其中最重要的当然是学员人数的问题。学员人数最好不要太多,人数过多,一个老师根本照顾不过来,跟放羊没什么区别,老师和学员良好的沟通是获取项目经验的重要渠道。教学点位置偏点没关系,只要学费低就OK了。班级人数和教学点位置会直接影响学费的高低,人数越少,学费越高;地点越偏,学费越低,最好能在这些因素中找到一个好的平衡点。

总结

    废话说了这么一大堆,给大家总结一下。我们参加java培训的目的就是为了找份好工作呀,企业最看重的是什么?不就是“项目经验”吗!如果你做过OA系统,然后去面试做OA的公司,那就不可能不进。你做过GIS系统,去面试做GIS系统的公司,不要你才怪呢。你做过搜索引擎,去面试做搜索的公司,肯定也十拿九稳,当然google就不一定能去了,呵呵。如果java培训班有几个高水平的项目,有大牛老师指导,肯定能帮你积累相当的项目经验(其实项目经验就是工作经验),到时候,找不到好工作,拿不到高薪水,都难!说白了,选择培训班就是选择项目。

下面总结一下选择java培训班的整个流程:

     摆正心态.

     就业是自己的事,不要有依赖培训机构的心态.自己学到了真东西,走遍天下都不怕.

    不信广告,信自己。不看广告,不要听他们托儿的忽悠。

    项目是金,货比三家.

    java培训班能否提供高水平的项目是选择它的主要理由.教室等硬件可以凑合,项目不能凑合,一定要是真实业界项目,项目一定要高水平,符合业界的潮流,包含较多的技术内容。

 

JAVA软件工程师就业班————9月7日开课

Java高端培训项目演示

中科院Javaweb高端培训视频教程(清晰版全集)

中科院JavaSE高端培训视频教程(清晰版全集)

中科院Java高级开发技术视频教程合集(清晰版全集)

中科院Java oracle数据库视频教程(清晰版全集)

中科院Java XML视频教程(清晰版全集)

Java软件资深讲师———— 刘 伟

Java软件资深讲师———— 张利国

记一次有内存泄漏的性能测试

lvyue 发表于 2010-01-04 14:58 浏览次数:56 views 来源:

虽然Windows Mobile 6.5才刚刚推向市场,但是据一些摩托罗拉雇员意外泄露的资料显示,Windows Mobile 7已经开发了一年之久,并已经进入到Beta测试阶段。   Windows Mobile 7的最主要特色在于手写识别功能,而且将加入NVIDIA Tegra平台(APX 2500)的支持,该操作系统平台还将原生支持MEMS传感器,例如加速度传感器和方向传感器。   另外,Windows Mobile 7还将具备一种匿名缓存功能,但是运作机制现在还是未知。其他功能包括Windows Live ID可以被用于Exchange Mobile客户端,这意味着用户能够通过手机访问他们的Windows服务。而且所有的Windows Mobile 7手机都将具备WiFi功能,或至少操作系统具备原生WiFi硬件驱动。   其他功能包括,Windows Mobile 7还有视频共享用户界面、Live视频搜索功能、以及丰富的视频电话和会话控制功能。ActiveSync将会在新操作系统中集成。不过,纵使我们知道 Windows Mobile 7的众多新功能,这款系统也要等到2010年底才会公布。

Flash as3.0命令中的loading的制作

老孙 发表于 2010-01-04 14:56 浏览次数:180 views 来源:

stop();
stage.scaleMode=StageScaleMode.NO_SCALE;
//设置舞台属性不跟随播放器大小而改变
stage.showDefaultContextMenu=false;
//屏蔽右键菜单
stage.frameRate=30;
//设置帧频为30
var stageW=stage.stageWidth;
var stageH=stage.stageHeight;
//取得舞台宽和高
stop();
var mybytes:Number;
loaderInfo.addEventListener(ProgressEvent.PROGRESS,loading);
loaderInfo.addEventListener(Event.COMPLETE,loaded);

function loading(evt) {
mybytes =(evt.bytesLoaded/evt.bytesTotal)*100;
trace(mybytes);
this.mysprit.scaleX=mybytes/100;
this.mytext.text=”loading..”+Math.floor(mybytes)+”%”
}
function loaded(evt) {
trace(”nextframe”)
this.gotoAndPlay(2);
}

模拟地球效果

老孙 发表于 2010-01-04 14:54 浏览次数:43 views 来源:

 模拟地球效果

什么是UAT测试?

lvyue 发表于 2010-01-04 14:50 浏览次数:54 views 来源:

  UAT(user acceptance Test) 户接受度测试

以下是它的一些一般步骤;仅供参考

一步:用户培训手册准备(就是针对要进行UAT测试的对象,及要进行培训的用户,准备一些培训资料:一般是测试对象使用/功能手册及要培训的用户的个人资料等等:就跟教师上课进行备课差不多)

二步:测试脚本发放(如果你公司采用自动化测试,那么每一个功能或一个模块等都有对应的测试脚本,可以把这些测试脚本分发给特点的人员;如果采用手工测试,就要把详细描述一个功能或模块的文档分给相关人员(当然自动化测试也要分发))

三步:用户补充业务测试场景和测试数据(就是:请有代表性的一些最终用户根据实际应用环境及一些常用处理的数据,来给一些补充与建议,越贴近实际应用越好)

四步:顾问补充测试步骤(你可以请项目专家,测试经理,或专门的测试,开发等顾问对测试步骤进行补充)

五步:培训资料及测试脚本文档的确定与最终输出(一般到此,各种资料都基本确定,这时可以将它们进行打印,或形成特别的电子文档)

六步:测试策略的制定(如嵌入测试策略等,http://bbs.51testing.com/thread-3000-1-1.html)

七步:测试用户的确定(大体上从培训人员中选取,因为不能每个接受培训的人员都是资格去测试的,这里你可以通过一些考核来实现人员的筛选等等)

八步:由专门的测试组织机构确定测试地点,并发出通知

九步:测试网络环境的搭建和保障(包括网络,系统,硬软件,包括一些case工具等

十步:组织进行测试

十一步:评审分析提交的问题(这就进入了一般bug处理过程,形成了一个循环)

UAT测试的重点,我想主要体现在以下几个方面

一是:培训的资料表述要准确全面,易懂等(这是理论基础)

二是:人员选择,要典型有代表性(用户基础)

三是:测试流程步骤(要周密)

四是:测试策略制定(确定一个适合测试对象及测试人员的测试策略)

五是:问题的表达与处理(因为测试者不是专业开发测试人员,对于问题的表达可能不能到位,或根本就不是那种问题,这就存在如何复现与转化问题等)

怎样提高性能测试的效率和质量

lvyue 发表于 2010-01-04 14:44 浏览次数:34 views 来源:

  在信息技术日新月异的今天,顺应世界经济一体化的潮流,中国软件行业加强了与世界同行的沟通与交流,基于本身提高软件质量的迫切需要,在国外优秀的软件企业中被证明为提高软件质量行之有效的途径,软件测试开始越来

越受国内软件行业重视。各种各样的测试工具和测试理论,也都逐渐被我们所熟知。软件测试也开始成为人们平时谈论和网上探讨的热点话题。

在软件测试倍受注目的情况下,身为一名软件测试人员,如何高质量的完成公司交给的测试任务,无疑是我们应该考虑首要问题。从事软件测试已近两年,从刚开始的一脸茫然,到如今的手到擒来,期间也经历了很多曲折,总结这两年来的经念教训,我认为有必要就软件性能测试这个话题和大家展开探讨,与大家共同分享软件测试的得失,为提高我们的测试水平尽一分薄力。

引言

作为评价产品性能的重要手段,性能测试在软件测试工作中占的比重一直很大,要最终提供一份准确,权威的测试报告,测试人员的努力工作自然不可或缺,但更重要的是测试人员清晰的工作思路,简洁的测试流程和良好的测 试方法。

目前性能测试存在的问题

总结以往进行的性能测试,虽然测试人员自始至终对测试工作都做到了认真负责,但测试报告出炉后,大家总觉得美中不足,对测试结果都心存疑虑,尤其在那些时间跨度较长、针对不同的测试对象的性能对比测试中,或多或少

都存在以下几个方面的问题:

1. 测试准备不充分,测试目标不明确,测试计划不详细;

2. 缺乏测试以及针对测试对象的技术储备;

3. 测试环境的稳定性及前后一致性不足;

4. 测试数据精确性和代表性不足;

5. 测试描述不精练;

下面,我们就剖析以上问题的同时,探讨一下如何解决这些问题。

性能测试准备

这是一个经常被测试人员忽略的环节,在接到测压任务后,基于种种其它因素的考虑,测试人员往往急于进度,立即投入到具体的测试工作去了,测试、记录、分析,忙的不亦乐乎,工作进行了一半才发现,或是硬件配置不符 合要求,或是网络环境不理想,甚至软件版本不对,一时弄得骑虎难下,这都是没有做好测试准备惹的祸。

那么我们应该如何做好性能测试的准备工作呢?

做软件项目有需求调查、需要分析,我们做测试也一样。在拿到测试任务后,我们首要的任务就是分析测试任务,在开始测试前,我们至少要弄清以下几个问题:

a) 要测试什么或测试的对象是谁?

b) 要测试什么问题或我们想要弄清楚或是论证的问题?

c) 哪些因素会影响测试结果?

d) 需要怎样的测试环境?

e) 应该怎样测试?

只有在认真调查测试需求和仔细分析测试任务后,才有可能弄清以上一系例的问题,只有对测试任务非常清楚,测试目标极其明确的前提下,我们才可能制定出切实可行的测试计划。

明确测试目标,详尽测试计划

在对测试需求充分了解的基础上,制定尽可能详细的测试计划,对测试的实施是大有裨益的。测试计划的制定,大多专业的测试书籍多有详述,故本文不再鏊述。

测试技术准备

在目前的大环境下,要求测试人员在短时间撑握所有的软、硬件知识是不太现实的,但平时测试人员应抓紧对测试工具和测试理论的研究,在测试计划中,应给研究测试对象和测试工具分配充足的学习时间,只有在充分撑握测试工具,完全了解测试对象的前提下,我们才能够实施测试。建力在错误的认识上的测试,既使你再努力,结果也是背道而驰,也很难证明问题,更不用说用这样的测试报告去说服用户。

配置测试环境

只有在充分认识测试测试对象的基础上,我们才知道每一种测试对象,需要什么样的配置,才有可能配置一种相对公平、合理的测试环境(这在性能对比测压中尤其重要)。

考虑到其它因素,如网络锁、网速、显示分辩率,数据库权限、容量等对测试结果的影响。如条件允许,我们最好能配置几组不同的测试环境。

测试数据的获取和处理

在所有的测试中,测试数据的收集工作都是较为困难的,Gis软件更是如此,每一种软件都有它的文件格式,有的软件还有几种格式。在这种情况下,我们只能把第三方格式的数据转换成每一种被测试软件自已的格式。同时,还应对数据作一定的处理,如处理数据冗余,处理显示风格等。如在测试时会更新数据,操作前一定要备份数据。

其外,还应评估数据格式和数据量对测试的影响,如有必要,应准备多组数据。

最后,一定要检查测试数据的有效性,避免损坏数据对测试结果的影响。

如何开展性能测试

测试前期的准备工作纷繁复杂,做好测试准备工作,已是完成了测试工作的一大半,但要产生一份具有说服力的测试报告,还应正确把握测试的强度,保持测试的一致性,提高测试的精度。

判断软件的好坏,要看软件解决实际应用的能力,只有在一定的测试强度下,才能测试出各种软件资源的消耗率,软件运行的速度,软件的稳定性。通过对比在不同的测试强度下,不同软件每一个功能模块解决实际问题的能力和软件运行的效率,我们才可能判断出不同软件的每一个模块的强弱,甚至于整个软件的优劣。

性能测试开始后,所有参数的输入都应遵循统一的标准,无论是哪一个环节,哪怕是一点点偏差,都应立即纠正,觉不能心存侥幸。要特别注意外部环境对测试结果的影响,如果在整个测试过程中,外部境不一致,如网速、机器内存使用率不一样,就有可能导制测试结果与实际情况有出入。

如何总结性能测试

对测试的终结,实际就是对测试数据的分析和处理。我们测试工作做的再好,如最终到用户手中的是一堆杂乱无章的数据,那也是美中不足。

首先,我们最好从所有的测试数据中,筛选出具有代表意义的数据,做出统计图,然后和开发人员一起,认真分析数据,找出软件存在的问题,得出测试结论。大多数用户,真正需要的就是科学、客观的测试结论。

结论

各种软件性能测试,范围大小不同,强度高底有别,但只要本着认真、客观,科学的工作态度,遵循本文论述的方法,做好测试工作是不难的。

本篇文章主要谈的是软件性能测试方面的问题,相信对其它方面的软件测试也有一定的借鉴作用。

窥探云测试

lvyue 发表于 2010-01-04 14:42 浏览次数:1,408 views 来源:

  云计算是当今的一个热点,也是一个潮流,那么软件测试能否借助云计算的威力而更上一层楼呢?最近看了几个号称云测试的网站,有感,记录一下。

第一个网站是Cloud Testing。这个公司能提供多种平台,多种浏览器的平台,一般的用户在本地用Selenium把自动化测试脚本编写好,然后上传到他们网站,然后就可以在他们的平台上运行Selenium脚本了。他们的优点是:平台和浏览器覆盖得广,按需付费。不过我自己对这样的服务有以下的疑问:

1. 基于UI的自动化测试通常都会遇到一些不稳定的问题,本地编辑好的自动化脚本是否也能够在他们的平台上正常运行

2. 如果出现错误,有没有办法进行调试。究竟这个错误是SUT的错误,还是测试脚本的错误,如何区分

3. 用户自己开发的插件能否在这个云测试平台上使用(我觉得是不行的)

总得来说Cloud Testing是一个基于UI自动化测试的云测试平台,但是我认为这样的平台并没有太多的优势,一般做互联网的公司产品发布都是比较快的,根本是不可能有时间和资源去覆盖所有的浏览器和平台,根据80/20原则,在中国搞互联网,只要搞定Windows下的IE6和IE7基本上就万事大吉了,一般好一点的前端TEAM都是在Firefox下进行开发的,所以Firefox的兼容应该是不成问题,最后在 Chrome和Safari上过一下关键流程,差不多了。再说,现在虚拟化技术日渐流行,自己搭建多个平台也不是非常耗费资源。

第二个是keynote公司的kite,这个感觉比Cloud Testing更加弱一点,kite有自己的浏览器,然后用户在这个浏览器上录制脚本,然后上传,然后可以在keynote公司不同的可用地点中运行测试,查看结果。这个平台给我的感觉更多的是关注终端用户性能,里面有一个页面元素下载的timeline,用户可以查看那些页面资源下载花费多少时间,DNS查询时间等等……

这个平台的问题有:

1. 可用的节点不多,现在为止只有北美地区的几个节点可用

2. 专门的工具,可能对测试的结果有影响

估计是keynote公司的一个实验性产品。

第三个是SOASTA。这个公司不单只提供了功能测试,而且还有性能测试。感觉上性能测试应该是利用云计算的一个非常重要而且有意义的点。貌似这个公司不是那么开放,没有太多公开的资料,所以不知道他们是怎么运作的。看他们的网站的一些成功案例,说的挺好,不过这样相对于在公网做性能测试,不知道会不会有问题:

1. 带宽问题,例如云那段设定的带宽是1Mb,那么云和端之间的带宽是否能真正达到1Mb呢

2. 安全问题,这些性能测试的脚本不会日后成为攻击的工具吧

突然觉得,现在做CDN的公司,其实他们可以兼营性能测试,因为他们的服务器分布的跟真实情况最接近的,而且也有足够多的服务器资源和带宽。




返回首页 | 关于我们 | 联系我们 | 诚聘英才 | 网站地图 | 友情链接 | 版权声明 | 乘车路线| 地铁路线