要保证项目按照正常进度发布,需要整个研发团队齐心协力。 有很多原因都可能会造成项目延期。
1、产品经理频繁修改需求
2、开发团队存在技术难题
3、测试团队测不完
今天我想跟大家聊一下,测试团队如何保证项目按期上线,以及在这个过程中可能遇到的挑战。放到测试人员个人而言,如果因为个人没有规划好测试进度,导致项目延期发布,可能需要承担一定的责任。
这个话题其实可以用来回答很多的面试题。
比如你们公司的测试流程是怎样的?很多人面试的时候都是按照标准的五步、七步回答,机器人也可以照着背的。 还有可能会问一下你们公司是用的什么研发模型等等。 要回答好的话,当然还得结合具体的项目。
一、提前介入测试,认真做好需求分析
我们要尽可能的了解这个项目的真实情况,包括需求设计,详细设计,流程图、数据流向图,以及数据库的表结构、数据字典,如果有条件,可以看看架构图。 总之,拿到这些有利于我们熟悉需求的文档材料。
在项目启动阶段就开始跟需求人员,产品人员或者是开发人员打成一片,尽可能跟他们多沟通,获取到尽可能多的信息。测试人员可能更喜欢从文档来获取更多的信息,但是目前更多的互联网企业,也不讲究文档,只是强调沟通。他们也没有时间写,也没有历史的文档,所以我们要尽可能通过自己的沟通各种各样的会议来解决这样的问题。
各种会议,能参加尽量参加,比如项目启动会议,产品需求会,架构讨论会,我建议都去参加。 可能别人没有邀请你参加,但是你完全可以和测试经理或者是项目经理申请,一般都不会有人拒绝你。因为你有足够的理由告诉他,我是为了保证质量多了解相关的信息。
很多测试人员不太喜欢参加会议,不深入去讨论需求,导致测试时很被动,写简历也没东西写。
二、测试计划没必要花太多精力
你了解足够的信息了之后,可以做个简单的测试计划,划分功能模块。测试计划我觉得比较虚,个人建议不要花太多精力在这个上面,找一个模板,套着写一页纸左右就可以了。
因为你做的计划通常都无法按时的去执行,而且通常都会有延迟啊。计划总是得不到一个实质上的一个贯彻,往往会因为各种原因来回改动,测试人员大多数情况都是被动的接受别人的诉求,时间不太好分配,所以稍微写一下大概的进度控制和时间安排就好。
测试计划写什么?
就是尽可能的把这个大板块大块的周期都定义清楚就可以了。
三、测试用例编写
这里不多说,主要就是要高效,然后分好优先级和功能模块,多打标签。
四、测试执行的关键点
测试执行,一般的公司可能是按照经典的三轮测试方式。
第一轮测试,全部都要执行一遍,验证所有重要级别的bug全都是修改完毕。一般来说,第一轮会占据整个测试时间的50%-70%的时间。
第二轮测试,继续把测试用例执行一遍,然后我要验证所有的 bug 全部都解决。不解决没有关系,至少所有的项目人员全都是能够对这个测试的结果表确认,有些 bug 可以延期到下一期改。二轮基本上
会占据测试的20%-30% 的时间。
第三轮测试,把已经发现缺陷的用例和相关功能模块回归一遍,验证bug不会因为某种原因重新浮现出来。
上线了之后,还需要做1-2天在线跟踪,因为线上的环境和测试的环境差异还是较大的。
但是,这个测试过程是完全理想化的。现实世界很难出现,往往就是停留在第一轮测试,一直在测,因此要保证在这一轮测试把重要bug都解决,其他bug也要和相关干系人确认好。
五、测试环境
一般情况下,测试环境会有好几套。
最开始的环境是开发环境,这个环境主要就是开发自己简单调试用的。测试接触的是独立的测试环境,在这里面完成测试,有的时候需要测试人员自己搭建测试环境,对于项目比较简单的其实问题不大,但是如果项目比较复杂,打环境可能会浪费很多测试时间。
最好是使用 docker 这样的工具,搭建环境会更方便一些。
后面需要用到的预发布环境,正式环境基本可以保持不变。
需要注意的是性能环境一般和普通测试环境是分开的,因为他需要更多的数据构造。
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取