我亲身经历的2022年软件质量工作——测试工作的经验总结及一些建议

news/2024/6/18 21:32:17 标签: 测试用例, 经验分享
  • 2022年对于大部分人来说都是辛苦的一年。
  • 对于整个社会,疫情反反复复,折磨的每一个人都心力交瘁。
    经济下滑,失业率上升似乎听到的都是不好的消息。
  • 对于整个互联网行业也频频传出大厂裁员的消息。
    而质量团队在大厂的裁员计划里也是首当其冲。
  • 时至今日,为什么质量团队仍然是在技术团队中不受到重视的那部分?
    大概是因为测试工作并不能直接带来收益。并且很难衡量投入测试工作之后,是否有相对等的回报。
  • 在这样的大环境下,对于个人而言,不断提升自己的能力绝对是利大于弊的选择。
    (其实就是内卷 = =)
  • 网上经常可以查到各种各样的文章或者教程,大多数内容是“测试需要了解的知识”、“测试需要掌握的工具”。
    即使按照教程一样一样的学下来,真正到了日常工作中,会发现这些技能最大的作用就是在面试的时候给自己加分,实际工作中并没有用到。
  • 有些测试伙伴也会因此而迷茫,学习这些技能是否真的有用?是否真的能够帮到自己?

在这里我也根据自己这些年的工作经历,总结出一些经验建议,希望可以帮助到刚入行的伙伴们:

  • 一、 首先,测试基本功很重要
  • 二、其次,测试工具的掌握
    • 1、如何学习
    • 2、如何选择
  • 三、最后,如何脱颖而出
    • 1、掌握一门代码语言是必须的
    • 2、积极思考,并对现有工作模式提出建议
    • 3、开发测试工具
  • 四、写在2022的最后

一、 首先,测试基本功很重要

作为测试人员,想要得到别人的认可,首先最重要的就是掌握测试的基本功。
在这里插入图片描述

1、测试用例

  • 测试用例设计对于测试来说,是非常重要的一项技能,几乎在每一场测试人员的面试中,都会让面试对象现场设计测试用例,以考验人员能力。

  • 但是大部分公司对用例的要求并不严格,甚至没有一个很好的管理或审查制度,这种情况下测试人员也很提升自身的用例设计水平。

  • 所以测试人员测试用例设计的水平也参差不齐,甚至已经有多年工作经验的测试人员编写的用例,仍然存在“预期与步骤混淆”、“前置条件不明确”、“用例描述语言模棱两可”等问题。

  • 或者是只会写熟悉的项目的用例,如果换了个项目、换了个环境,写出来的用例就存在很多漏测的问题。

  • 关于测试用例该如何入门,在博客之前的测试用例专栏已有更详细的介绍,这里就不再展开了:测试用例专栏-测试用例入门

  • 总之,测试用例很重要!

2、bug定位

  • 很少有教程专门讲过如果进行bug定位,但其实这也是测试人员一个非常重要的测试技能。
  • bug定位的越准确,开发修复的速度也就越快,测试工作的效率也就越高。
    (我们测试伙伴之间经常开玩笑说的一句话:“我直接告诉程序哪条代码错误得了”,确实这是bug解决最快的方式,哈哈哈~)
  • 但许多测试人员定位bug的过程就是将bug发生的过程记录下来,但定位bug应该不止于此。
  • 首先,可以利用排除法,找到发现bug的关键步骤,并且还要确认好是客户端的bug,还是服务端的bug。
  • 如果说是偶发的bug,应该尽量模拟出发生bug时的环境,可以多试几种极限条件,有的时候可能就是某个条件引发的问题
    (我们经常开玩笑说:没有非必须的bug,只有可能是没有达到必现的条件)
  • 想要更准确的定位bug,还需要拥有一定的代码能力,可以学习一种代码语言,或是多与开发人员交流,了解bug产生的原因,也会对之后定位bug有很大的帮助。

3、 风险评估能力

  • 比如,一个长线的产品,每一期的功能,是否对整个项目已稳定的功能造成影响。
  • 或者修复bug,可能引发其他什么问题、需求中,是否会有逻辑上的遗漏从而造成设计上的缺陷。
  • 等等这些,也是测试人员非常重要的技能。
  • 提升风险评估能力,首先要足够了解自己负责的项目,无论是需求还是代码实现方式。
  • 了解需求不只是知道有什么功能,还需要知道需求方设计这个功能的出发点,这样才能更容易的找到需求中是否有逻辑漏洞,是否有不满足功能触发点的缺陷。
  • 虽然测试不是专业的开发人员,无法像开发人员那样阅读代码,但了解代码设计逻辑,至少要知道哪些部分是公用一个模块、客户端什么时候与服务端交互数据等等。
  • **其次,就是要不断积累经验。**评估风险难免会有失误的时候,不要被失败打倒,找到失败原因,将经历转换为经验。
  • 最后,不断学习专业知识,或是别人总结的经验教训。

二、其次,测试工具的掌握

在这里插入图片描述

1、如何学习

  • 网上教测试工具的教程很多,博客之前的专栏有写过一个postman和接口测试的教程:零基础入门接口功能测试教程
  • 很多人学习工具的方式只希望简单,快速,最好直接就能知道点哪个按钮看哪个数据,而忽略了方法背后的为什么。
  • 其实虽然有各种各样的测试工具,但只要掌握响应的理论知识,就能轻松上手。
  • 比如,掌握了http相关知识,打开postman之后,不看教程也能快速上手。
  • 所以,理论知识同样也很重要,掌握了理论知识,同方向的工具也就能够快速上手。
  • 学习切勿急于求成,打好地基楼才可以建的更高

2、如何选择

  • 掌握什么样的测试工具能够在面试中加分,这个网上已经有很多教程,这里就不细说了。
  • 这里主要讨论在日常工作中,该如何选择工具学习。
  • 一种是按照公司业务的方向,和公司的测试策略,来选择工具。比如平时的测试工作包含接口测试,那么抓包工具、发送接口请求的工具,就需要掌握。
  • 各种类型的工具大多数情况只需要掌握一种,大部分选择公司内部正在使用的即可。当然随着测试经验增加,能比较同类型的工具,并选出最优选,也是个人能力的体现。
  • 或者也可以**多与开发人员沟通,了解什么样的工具可以协助测试,不一定要局限于测试工具。**比如项目如果有安卓平台,就可以使用adb logcat 配合程序打印出的相关功能日志,方便测试功能、及回溯bug产生的步骤。
  • 当已掌握的工具已经能够满足公司页面的基础上,**再往前一步,学习更高级别的测试工具。**比如前面所说的,已学习接口测试相关工具的情况下,可以学习接口压测工具,接口自动化测试工具。

三、最后,如何脱颖而出

  • 很多人工作都十分的被动,大部分人在工作中的角色偏向于执行者。
  • 但是只是被动的接受工作安排并完成,很难衡量谁做好,或谁做的不好。
  • 经常听到一些测试伙伴们抱怨“我做了这么多,为什么领导没有看到”。
  • 如何能够“被看到”,也是对当代打工人非常重要的一个问题。

在这里插入图片描述

1、掌握一门代码语言是必须的

  • 掌握一门代码语言已经能超过大部分的测试人员了。
  • 大部分情况下,学习Python是个不错的选择。

2、积极思考,并对现有工作模式提出建议

  • 想要脱颖而出,就要想办法走到别人的前面
  • 观察现有工作模式或工作内容,积极思考,并勇敢向上级提出自己的建议,也是一种能够直接“被看到”的方式。
  • 当然先要提出有用的建议,也要在拥有扎实的基本功,并不断学习的基础上。

3、开发测试工具

  • 能够通过自己所学的代码知识,开发出提高工作效率的测试工具,显然对个人而言是非常加分的。
  • postman专栏中的两篇脚本运用的示例,就是本打工仔,在公司接口改变了加密方式之后,编写出来的脚本。
    ( 实战:pre-request script加密接口请求参数(AES、MD5)、实战:Test script解密接口返回结果(AES))

四、写在2022的最后

  • 今年,本打工仔的打工生涯也开始进入了下一个阶段。希望这篇经验总结可以帮助到你。
  • 还有不到3个小时就要到2023年了。本打工仔还没有变成小阳人,也算是取得了一个阶段性的胜利。(我应该不会在最后三个小时变阳吧。。[苦笑])
  • 希望所有的苦难都留在2022吧,2023一切都可以好起来。

http://www.niftyadmin.cn/n/23128.html

相关文章

VectorNet详解

Abstract 本篇论文主要做了三个方面的事情: 特征工程 不同与以前的方法,将车辆行驶收集的信息用一张全局的图像来表示,论文提出用向量表示车辆行驶过程中收集的各种信息。 2. 层次图神经网络 论文构建了一种层次图神经网络,层次,即首先各个实体比如车辆、红绿灯等…

Vue 中 CSS scoped 的原理

前言 在日常的Vue项目开发过程中&#xff0c;为了让项目更好的维护一般都会使用模块化开发的方式进行。也就是每个组件维护独立的template&#xff0c;script&#xff0c;style。主要介绍一下使用<style scoped>为什么在页面渲染完后样式之间并不会造成污染。 示例 搭…

Hex程序烧写到单片机

一、创建一个Keil代码工程 1、在电脑F盘&#xff08;哪个盘可以随意选择&#xff09;上创建项目工程文件夹Template 2、在Template文件中&#xff0c;创建一个main.c文件 3、进入keil主页面&#xff0c;工具栏project---->New uVision project---->选则第一步的工程文…

整理了上千个 Python 工具库,涵盖24个大方向

Python 生态&#xff0c;向来以各种类库齐全而闻名&#xff0c;这也是这门语言如此受欢迎的重要原因。 今天就给大家分享一下这几天的战果&#xff0c;宵衣旰食&#xff0c;不眠不休的整理了近千个 Python 库&#xff0c;梳理不易啊&#xff0c;收藏的同时&#xff0c;记得点赞…

c++语法欠缺地方

sizeof是用来计算变量占多大内存的&#xff0c;单位是字节&#xff08;byte&#xff09;&#xff1b;sizeof 后面跟类型时&#xff0c;必须加上括号&#xff0c;例如sizeof(double);后面跟变量可以不用加括号&#xff0c;例如&#xff1a;sizeof d%d是以十进制形式输出有符号整…

高并发内存池项目(C++实战项目)

文章目录&#x1f384;项目介绍◎项目来源▶项目源码◎内存池相关知识1、池化技术2、内存池3、内存池主要解决的问题4、malloc&#x1f384;设计思路◎第一阶段–设计一个定长的内存池适应平台的指针方案◎第二阶段–高并发内存池整体框架设计1.线程缓存&#xff08;thread cac…

跟我学c++中级篇——类型擦除的应用

一、类型擦除的效果 前面分析了类型擦除&#xff0c;通过分析可以知道。类型擦除其实就是一种抽象&#xff0c;不通过继承来实现动态行为&#xff0c;从而更好的实现可扩展性和耦合性。在设计程序时&#xff0c;大家都知道&#xff0c;要依赖于抽象而不是具体。由于类型的限制…

算法设计与分析复习03:动态规划算法

算法设计与分析复习03&#xff1a;动态规划算法 文章目录算法设计与分析复习03&#xff1a;动态规划算法复习重点动态规划算法斐波那契数列及其应用矩阵链乘法凸多边形剖分矩阵链乘法凸多边形剖分最长公共子序列最大子段和&#xff08;字数组&#xff09;0-1背包编辑距离钢条切…