今天和大家来聊一聊测试工程师日常的工作是做什么的。
首先,一个互联网产品或者说一个新功能上线,需要经过需求评审,功能开发,测试,上线发布这四个流程。
测试就可以理解为,产品生产的最后一道关卡。负责产品的质量,我们需要尽可能的去发现开发的缺陷 ,及时发现及时解决,保证产品交付给用户是合格的产品。
那么测试工程师,每天都在做什么呢?
主要的工作分为四大部分:
业务测试
专项测试
效能提升和质量监控。
第一、业务测试
有的同学可能还不是很清楚,什么是业务。业务说白了,就是你们公司或者项目组为了达成商业目标而 所做的事,业务是由销售,运营,产品,设计,开发和测试共同完成的。比方说你们的项目组主要负责 搜索功能。那么你在里面的角色,就是这个搜索功能的迭代测试,那么如何进行业务测试呢?首先:需要参加需求评审和技术评审,熟悉和明确产品的需求。其次:针对需求文档和技术文档,进行测试用例的编写。编写完测试用例之后,还需要对测试用例进行评审。接下来:研发工程师会进行产品的开发,等开发完毕,开发自测通过后,会把代码提测到你这边。此时你要做的就是把代码部署到测试环境,并开始进行冒烟测试,冒烟测试就是把产品功能的主流程走一遍。看是不是能符合提测标准。如果已经满足提测标准,就可以开始按照你编写的测试用例逐渐进行测试,这个阶段就是测试的重头戏,主旋律就是发现bug、提交bug,开发解决完bug,再验证bug是否修复。测试完毕之后,需要让产品进行产品验收和体验。验证通过后方可进行上线。上线完毕之后,还需要在生产环境下进行回归测试,等回归测试没问题之后才能宣告功能正式交付。接下来就开始进行下一个功能迭代测试。
第二、专项测试
顾名思义,就是诸如数据测试,性能测试,自动化测试等特殊的测试,主要是对业务测试的进行补充,没有绝对完美无缺的系统,单靠业务测试是无法保证产品或代码质量得到更多提升的,比方说,自动化测试可以模拟1000次点击操作,但是这个要让手工测试去做的话,不得把测试工程师逼疯囖~(需要自动化测试学习资料可以关注我的公众号:程序员一凡,免费领取)专项测试可以发现一些手工测试发现不到的bug,但是专项测试不可能完全替代业务测试,业务测试具有主观能动性,可以站在用户的角度,去体验一个功能的好坏以及产品是否美观,但是专项测试不能做到这一点。
第三、效能提升
现在的互联网公司产品迭代周期很短,一个功能可能一到两天之类就得上线,加入说企业不追求效率提升的话,就无法快速占领市场,我们的测试工作也是一样,更应该注重效能提升,效能提升主要可以从CI/CD,bug管理,测试环境维护、流程管理和优化去考虑,有能力的测试团队可以考虑开发出适合自己团队的测试平台,集结所有优秀的测试工具,方便测试工程师提升测试效率。近几年来,DevOps也是火了一阵,DevOps就是开发运维一体化,可以把整个产品的生产过程,形成一套流水线规范,这样也可以很大程度提升产品的交付效率。
第四、质量监控
无论如何质量都是测试的脸面,为了保证质量,我们不能只局限于测试阶段去发现bug,我们应该也要在产品交付之后进行质量的监控。比方说移动app正式发布之前,都会有灰度测试的阶段,在这个阶段,已经有部分用户可以率先体验到我们的新功能,我们需要进行app的Crash监控,所谓的Crash就是app的崩溃,Crash给用户体验造成相当大的影响,监控Crash可以有效的把Crash扼杀在正式发版之前,其他的监控还有服务器的状态监控,用户的反馈监控,埋点数据监控等等。下图是我对测试工程师所做的事进行一个大概的总结。
大家如果对测试感兴趣,欢迎关注我。
最后:
欢迎关注程序员一凡,领取一份300页pdf文档的Python自动化测试工程师核心知识点总结!
这些资料的内容都是面试时面试官必问的知识点,篇章包括了很多知识点,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。