首页>新闻>软件测试>详情
北京软件测试工程师培训哪里有
预约试听

发布时间:编辑:佚名

千锋互联软件测试的总监王老师曾经说过,测试人员作为产品质量控制的之后一环,应当是以完善作品而非完成工作为目标。因此,不论是测试时的工作态度还是百岁在测试左右的测试流程,都应当有如测试这个工作本身一样的严谨程度。在王老师的课程中,他分别列举了两种测试流程,并对这两种流程加以分析,陈述利弊,在为同学们传授知识和经验的同时,也为同学们开展了一堂责任教育的课程。


一、简陋的测试流程

先说说普通的中小型规模公司。这类公司往往要考虑到节约成本的问题,入职后各种项目往往都在进行当中,上面给新人的定位是并不完全融入到项目中去,而经过指派任务的方式进行工作。

下面是简陋的流程图:


需求分析与架构设计:

我们以某一移动公司内部使用的项目为例,需求分析与架构全部由项目经理完成,之后由项目经理给具体某个开发人员分配任务,具体对某个功能模块的实现。这个对项目经理的经验与技术要求很高,他既然担任了需求分析师,又担任架构师的角色。


程序员编码:

因为较大众的开发语言用的是JAVA 语言,IDE用myeclipse 中自带的CVS版本管理工具,开发人员完成代码后,提交到版本库中。


测试:

进入正是测试任务后,入职后的第1个任务是搭建缺陷管理工具,禅道项目管理,经过推广对发现的问题进行跟踪。后来正明效果并不好,因为对于一个六七人的开发团队项目,开发人员更喜欢测试人员能当面反馈,这样更能提高效率。对一个小bug 经过当面交流的方式就可以将问题修复。

常见的简陋的测试环境中,有时并没有测试线。开发人员在本机上将项目进行部署运行。测试人员经过局域网访问开发人员的机子进行访问。或在测试人员本机上进行部署测试。这也是一个致命的缺点。因为开发人员测试人员使用的电脑存在太多不稳定性,这些都会造成问题的出现,有时候难以判定是系统问题还是环境问题。


上线:

经过测试人员测试过后,开发人员部署上线。

A程序员流程

你会发现在流程图中,A程序员是先发上线之后,再进行测试。这是一个面向大众用户的网站,上面给于测试人员的定位是测试员兼用户体验员,测试员将发现的bug和体验问题提交到缺陷管理系统,由经理对问题进行分析,指派开发人员解决。定期对系统进行更新。


流程分析:

这个流程**的优点,就是能快速的发现并修复问题。

缺点就非常多了,相信许多小软件公司也有类似的流程。
这个流程中,项目经理是核心,如果项目经理也确实是有多年开发与项目经验的牛人的话还好,但如果确实是一个尸位素餐的人的话……

(不过其实一般倒也不太可能,毕竟私企对员工的要求也不低,你出不来成绩的话上面不会放过你的)

对于测试来说,需求很不明确,测试文档与用例也是可有可无的产物,没有需求文档,或非常简陋,根据需求文档根本无法编写用例。有时候只能收集一些通用的测试用例,如登录、文件上传下载、列表翻页、日期选择、输入框验证、搜索等有一些“通用型”用例,以便在测试过程中做参考。功能测试的多了,拿到一个功能,测试思路也就出来了。


规范的测试流程 

放弃上份悠闲的工作吧,感谢那个带你入行公司,我们还是学习一下真正的测试在公作中如何进行的。所以,离开舒适区,来到了一家大公司。一般的大公司就有自己的团队,专业(对当时的你来说)的流程,以及与开发等同的地位了。

现在的测试流程:


需求分析:

需求分析由产品人员制定,他们要做的不是一份简单的文档,而是细化每一个功能的细节,每一个按钮的位置,对于稍大或复杂一点的需求都进行建模。


需求评审:

这里会叫上所有参与项目人员进行,开发人员、测试人员、QA人员。测试人员提出需求,开发人员考虑功能实现的方案与可行性、当然开发负责也是要参与的。测试人员主要是对需求的理解提出疑问,以便才能根据需求写用例。QA人员是对软件质量进行验证的极重要人员,所以也需求了解需求。


开发人员编写排期:

开发人员需求根据需求功能点进行排期。然后将开计划转交给测试人员。


测试计划排期:

测试人员根据开发计划,对测试具体测试时间,也就是开发功能完成后的时间,进行几轮测试等。然后,把项目的开发与测试计划发送给各部门负责人及参与项目的所有人员。


编写测试用例:

根据详细的需求分档,开始进行用例的编写。


用例评审:

在用例进行评审之间,先以邮件形式将用例发送给相关人员,以便他们事先了解用例对哪些功能进行验证以及验证的细节。

然后,测试人员组进行用例评审,开发人员对用例与实际功能不符合有哪些,产品人员对会经过用例对功能的具体实现进行把握等等。


提交基线:

开发人员完成所有功能后,会对自己的功能进行一个自测。自测完成后提交测试人员进行基线。


具体测试流程:

开发人员对于基到测试线的功能进行测式,发现的问题经过缺陷管理工具进行反馈,开发人员对问题进行修复,然后,准备第二轮基。

测试人员完成第1轮测试后,需要写测试结论,发到相关人员。然后对基线后的第二轮进行测试,第二轮会对第1轮中发现的问题进行重点回归。


测试过后:

经过两到三轮或四轮的测试后,直到没发现新的问题,或暂时无法解决,或不紧急的问题。经过上级确认,可以过。编写测试报告与验收方案。

验收方案是交由QA进行验证的。在现公司的流程中是将测试与QA分开的,测试人员重点关注的是功能是否可以正常运行。QA关注的是整个流程的质量以及用户的质量。有些公司QA与测试是不区分的,但这对测试的要求会更高,除了关心功能,还需要关心整体流程与质量。


流程分析:

对于刚接触这个流程的我们来说,这个流程是规范的,测试真正融入了整个流程,而且还担任了很重的角色,从而也有效的保证了软件产品的整体质量。

那么这个流程是不是完美的呢?不,这个项目流程太强化各种文档。我们来看测试的工作内容,测试计划、测试用例、测试结论、测试报告、验收方案、问题的提交跟踪。其实,我们真用于测试的时间是非常少的,在一周的时间,也许只有一天或不到一天的时间是在进行测试的。测试人员只有在测试的时候才会体现出他的价值。而大部分工作却不能体现他的价值。

当然,我这里会省略与测试主流程无关的东西,真正的测试工作中琐事很多。


上面的图更能清晰看出对问题的处理过程。


第1块面板中是开发人员未实现的功能,第二块面板中是开发完成功能,测试人员对其进行测试,发现不过的就放回未开发的面板中,测试过的将放到第三块面板中。

应该看到,一个好的测试流程,固然在接触之初会令人感到无比烦杂,但在实际应用中,却会显得高效异常。同时,我们也能看到,即使是再如何完备的测试流程,都必然会有其不足之处。而我们作为测试人员,正应当是一个发现缺点,指出缺点,改正缺点的人。或者说,不论是在程序中,还是在工作上,都要养成一个测试人员所应有的态度。

同时我们也能够想到,王老师是一个如此严谨的多年软测工程师,他所教授的课程想必也一定有质量保证啊!

王老师,10年以上年从业经验,硕士学位,曾任某上市集团测试部门主管,中航集团开发部技术主管,具备多年开发及测试工作经验。在性能测试、自动化测试及软件质量管理等方面的人才培养上具有较高的建树。

优秀的老师,优质的视频课程,尽在千锋互联。



课程咨询

咨询老师:金老师

咨询电话010-64707530

在线咨询:戳右边详询 >> 


  
阅读全文
热门机构推荐
<上一篇:想转行到深圳做IT,到底哪个职业比较好? >北京学UI设计哪个学校好下一篇:
1V1课程咨询 免费试听课程

编辑推荐