目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
1、软件测试人员的晋升之路
软件测试人员工作了3-5年之后,就会遇到很多困惑,到底软件测试的方向在哪,前途如何,“钱”景明朗吗?这个问题一直缠绕着很多人,也有部分测试人员开始慢慢在转岗。
软件测试人员跟软件产品的质量相关,这其中的关联主要是由于软件产品商品化后带来对产品质量的关注,也证明了客户需要的是更好的软件,更周到体贴放心安全的软件服务。
目前,软件测试工程师的晋升道路应该分为四大块:
1)手工黑盒功能测试
手工黑盒功能测试,主要是检测软件产品的各个功能是否满足用户需求,在最大程度上提高软件产品的质量,尽量多的找出软件产品里面的问题与缺陷。
这种测试工作主要要能够深刻理解软件需求,掌握软件的业务流程,掌握软件产品中的各个细节,尽量全面地找出软件产品中的问题所在。
2)功能和回归自动化测试
自动化测试的主要思路是利用测试工具,进行替代手工的测试活动,减轻测试人员的劳动强度,减少繁重重复性的工作,通过工具,进行软件产品版本的回归验证。
通过VBScript脚本语言,编写自动化测试脚本,利用夜间进行自动测试。
3)性能或Web测试
性能,针对于互联网平台来说至关重要。大量的网络访问量,会使得大型服务器的处理速度受到影响,严重的时候会让服务器宕机,让互联网企业损失很大。
如何能找出服务器的硬件、软件的性能缺陷,找出涉及性能的瓶颈,提出解决方案。
4)信息安全测试
互联网的信息安全,对个人来说是隐私和个人信息保密,如果不安全会影响到个人的生活工作和学习,会有财产和名誉的损失。
对于单位来说更是商业机密的安全重要性,在竞争激烈的今天,单位的数据、代码、新产品、新专利、新点子都是关乎企业未来的竞争力和发展的,如果在信息安全方面没有注意的话,损失的不仅仅是产品,更是企业发展的未来。
5)白盒测试
白盒测试,概况来说是对代码进行检测,对逻辑覆盖进行检测,对代码的运行效率进行检测,是从根本上找出软件产品的问题与缺陷。
要求白盒测试人员的计算机水平,开发水平都有跟开发人员一致,也许还要更高,这样才能从底层确保软件产品的质量。
2、软件测试人员能力素质要求
基本素质要求
1)良好的沟通能力
由于工作性质的原因,软件测试人员需要经常与用户和开发方、技术人员和非技术人员打交道,必须具备良好的沟通能力。
测试工程师既要与用户谈得来,又要与开发人员说得上话。和用户交流时,重点需放在系统可以正确地处理什么和不可以处理什么,尽量不要使用专业术语。
和开发方交流则不一样,尽量用术语,对相同的信息,软件测试人员须重新组织以另一种方式表达出来。
测试人员要善于表达自己的观点,一方面,要坚定地表明软件缺陷为何必须修复,并通过实际演示力陈观点;
另一方面,要采用委婉的态度和适当的方式,使得开发方和用户愿意接受,特别是尽量避免与开发人员可能的冲突。
2)扎实的工作作风
软件测试人员需具备"五心"–专心、耐心、细心、责任心、自信心。
专心:要集中精力,不可一心二用。精力集中不仅能够提高工作效率,还能发现更多的软件缺陷。
细心:软件测试人员必须细致执行,不忽略关键详解。若不细心,有些软件缺陷将很难被发现。
耐心:软件测试会很枯燥,需要很大的耐心才需要做好。如果比较浮躁,也不会做到专心和细心,很多缺陷将从眼前逃掉。
责任心:责任心是做好任何工作的必备素质之一,软件测试尤其如此。软件测试往往起到最后把关的作用,如果敷衍了事,软件缺陷就会被放进发布版本或最终应用中,很可能造成非常严重的后果。
自信心:自信心是很多测试人员缺少的一项素质,遇到困难缩手缩脚,工作质量大打折扣。
但具备了较强的自信息,才能更好地与用户和开发方交谈,才能更好地开展测试工作和发现缺陷。软件测试人员必须建立起能解决一切测试问题的信心。
3)全面的技术基础
软件测试人员需要具备较为全面的技术。才能高质量地完成测试工作,才能更好地与开发方进行沟通和交流。
除了设计测试用例、编写测试脚本、使用测试工具、建立测试环境等测试技术外,技术基础通常还包括编程语言、系统架构、操作系统、网络通信、数据库的特性与操作等,还需要了解被测试软件系统的背景知识、清楚被测软件用到的概念和技术等。
3、对软件测试工程师的误区
1)软件测试不可能发现所有错误,没必要较真
软件测试确实不容易发现软件中存在的全部错误,但是软件测试发现的错误一般都是最容易发生的错误,并且及时只排除了几个错误,就可能会避免巨大的损失,带来可观的回报。
2)软件测试工作琐碎而枯燥,没有创造性
软件测试需要逐步逐个得梳理测试需求,对每个测试需求分解若干个测试项,对每个测试项设计若干个测试用例,然后要准备详细的测试数据,逐个地进行测试用例,记录测试实际结果。
分析其与期望结果的一致性等,工作确实比较繁琐,但是无论是测试需求的梳理、测试用例的设计还是测试结果的分析,都需要测试人员具有创造性才能更好更高效地完成测试工作。
3)软件测试人员了解的软件知识背景没有设计人员或开发人员的更多更深
好的软件测试是测试技术,背景知识和测试经验的完美结合,好的测试人员能够综合各种技能多快好省地发现软件缺陷,最大限度地提高测试效果和效率,能够创造巨大的价值。
4)软件测试的工作就是给人挑毛病的,容易招人讨厌
软件测试是站在委托方的角度,努力发现软件中存在的问题,最大程度的提升软件质量,保证软件产品在最终用户手中少出问题,事实上也是为开发方挽回或减少损失。
另外,软件测试对事不对人,发现错误并不针对编程人员,而是尽量对整个软件产品有益,测试人员和编程人员的立场从本质上是一致的。
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
每一次努力都是蜕变的开始,不要停下脚步,不要放弃追逐,因为只有不断奋斗,才能实现自己的价值,成就更美好的未来。
在人生的舞台上,奋斗是最动人的旋律,坚持是最美的姿态,只有不断超越自我,才能让梦想翱翔于蓝天,让生命绽放绚丽的色彩。
面对困境,不屈不挠;遭遇失败,坚定信心;追寻梦想,不知疲倦;因为只有不停奋斗,才能绽放人生的辉煌,点亮未来的星光。