当前位置: 首页 > news >正文

5年软件测试年薪30w+,我的坎坷之路谁又知道

在深圳做了五年软件测试工作,从之前的一脸懵的点点点,到现在会自动化测试,说一点点非计算机专业人员从事软件测试的心得体会,仅供参考交流。

大部分测试在公司没啥地位,当然如果你懂技术就还行,单纯点点点,地位很低,其次测试大部分都是面试造飞机,进去拧螺丝的典型,我目前是一家公司的测试负责人,面试的时候说的天花乱坠,要做接口自动化,搭建测试平台,性能压测,这些我也确实做到了,所以试用期给我转正,但是我写的接口自动化和搭建的自动化平台也就是搭起来了,公司压根没用上。

今天就以测试阶段分析一下软件测试人员每天基本工作内容,总的分为以下几个阶段:

1.项目开始之初,也可以是一次迭代开始之初

这个时候每天基本都是以熟悉本次项目或本次迭代功能模块需求为主。

方式:一般就是看文档,有时就是看一天文档,或参加不同的评审会。

根据不同人理解需求方式的不同,我比较喜欢用XMIND梳理测试点需求,不管做什么事都喜欢用笔去整理一番。

这阶段主要是理解需求,分析功能模块的业务流程,尽可能将测试点梳理得更细,在梳理过程中如果遇到不理解,或需要做的需求与以前的需求逻辑不符时,可以先找产品经理讨论,并确定,方式可以是当面讨论,也可以以邮件的方式确定,推荐以邮件的方式确定。

如果项目流程完善的团队,这时一般会由产品经理开始组织需求评审,用通俗的话讲就是过需求,以前公司是由SE组织需求评审,然后开发人员组织评审Story,目前是开发人员有时会组织,不同人组织评审内容有所不同,测试人员关注的重点也会随之变化。

2.项目中前期工作内容

这时阶段软件测试人员主是写文档。

因为前期已经将需求的范围和测试点整理OK 了,那这个时候基本就是输出这些东西为主,输出的人文档测试员称之为 测试用例。

方式:一般是用excel写,有可能会写上几天的测试用例。

测试用例写完之后,测试人员会组织测试用例评审,可以用正式的会议形式组织,也可以以邮件的形式发给开发和产品评审,如果是以邮件的形式,那一定要跟踪,因为大部分开发人员都不喜欢看邮件,可以用即时通讯提醒开发人员和产品经理去评审测试用例。

这个阶段开发人员一般都在编码,也是非常忙的时候。

测试用例并不是一定要用excel写,像现在项目测试用例大部分都是用XMIND写,喔现在习惯了用这种方式写,用XMIND写更能发散测试人员的思维。

现在很多公司都不喜欢写测试用例,觉得太花费时间了,也可能是由于项目紧的原因,但我觉得测试用例在执行测试之前一定去有这样一个过程,虽然花费时间,但是在执行测试时只需要根据前面梳理的测试点去执行就OK了,同时不容易造成漏测,就算公司不要求,我在测试之前,一定会做这样的事,无论项目时间是否紧迫,这也算是成为一种习惯了。

3.项目中期工作内容

这个阶段是软件测试人员最辛苦的阶段—测试执行阶段。

方式:根据测试类型的不同,执行测试也有所不同

功能测试时,执行测试主要就是测试软件的功能,界面以及软件体验性等;做接口测试时,执行阶段就是通过工具调用各种接口,测试各类接口传值、取参、返回等测试点。

这个阶段不仅要测试,还有一件非常重要的事情就是提交BUG。

大概分为:在缺陷管理工具上编写BUG,和开发人员讨论BUG,复现BUG,跟踪BUG的处理流程。这个时期需要做的事情很多,不断地测试,不断地与开人员沟通,复现BUG。

在进行第二三轮测试时需要对前期提交的BUG,进行回归测试。

软件测试人员不仅要有发现BUG的能力,也需要有分析BUG,定位BUG的能力。定位BUG可以通过查询数据库、后台日志或者查看源代码等不同的方式去分析和定位。

4.项目后期工作内容

这个阶段测试人员主要做的事情有写测试报告和项目/迭代总结。

执行测试完成之后,测试人员需要对本次测试下一个结论,到底是测试通过还是不通过,这时软件测试人员需要给测试结论,但不能就简单的一句话给开发说本次项目测试通过了,可以上线,或者说本次项目测试不通过,BUG还有很多,软件质量有风险。

所有事情都讲究依据,那么软件测试也需要,测试人员需要给项目团队提供测试结果的依据。所以测试报告中一般包括测试用例的执行情况、从各种维度分析缺陷、遗留缺陷等方面分析测试情况。

项目测试完之后,软件测试人员可以利用项目间隔总结项目,一般是输出业务需求为主,方便其他测试人员查阅。

以上就是根据测试阶段分析了软件测试人员的主要工作内容。

基本的情况我先介绍到这里了,有想法的朋友可以看下面这些视频来学习软件测试,祝大家早日找到适合自己的工作

B站2023年最详细的python自动化测试框架全栈测试开发技术入门到精通教程

4.Jmeter【接口实战】

【Web自动化测试】需求和挑战

相关文章:

5年软件测试年薪30w+,我的坎坷之路谁又知道

在深圳做了五年软件测试工作,从之前的一脸懵的点点点,到现在会自动化测试,说一点点非计算机专业人员从事软件测试的心得体会,仅供参考交流。 大部分测试在公司没啥地位,当然如果你懂技术就还行,单纯点点点…...

【Opencv--自适应图像二值化】cv2.adaptiveThreshold()

【Opencv–adaptiveThreshold】自适应阈值图像二值化 文章目录【Opencv--adaptiveThreshold】自适应阈值图像二值化1. 介绍2. adaptiveThreshold函数2.1 函数调用2.2 补充说明3. 代码示例4. 效果4.1 原图(ori.img)4.2 处理后5. 参考1. 介绍 在这里 cv2.…...

洛谷P8601[蓝桥杯][2013年第四届真题]剪格子

题目描述如图 11 所示,33 的格子中填写了一些整数。我们沿着图中的红色线剪开,得到两个部分,每个部分的数字和都是 60。本题的要求就是请你编程判定:对给定的 mn 的格子中的整数,是否可以分割为两个部分,使…...

配置alias实现快速生成.gitignore文件

git工具:版本控制开发工具。 cscope工具:用于浏览C源码的工具,类似于ctags。在代码根目录下执行cscope -Rbq,然后产生三个索引文件(cscope.out、cscope.in.out和cscope.po.out三个文件)。 在Linux下使用vi…...

MySQL数据库调优————GROUP BY及DISTINCT优化

GROUP BY 三种处理GROUP BY的方式 松散索引扫描(Loose Index Scan)紧凑索引扫描(Tight Index Scan)临时表(Temporary table) 三种方式的性能一次递减 松散索引扫描 无需扫描满足条件的所有索引键即可返…...

LRU缓存算法

双向链表哈希表(非线程安全) https://leetcode.cn/problems/lru-cache/solutions/259678/lruhuan-cun-ji-zhi-by-leetcode-solution/ /*** LRU算法: 哈希表双向链表实现* 1. 双向链表按照被使用的顺序来存储, 靠近头部的节点是最近使用的, 靠近尾部的节…...

@Configuration注解

Configuration注解介绍 Configuration注解,用于标注一个类是一个spring的配置类(同时,也是一个bean),配置类中可以使用ComponentScan、Import、ImportResource 和 Bean等注解的方式定义beanDefinition。 Target(Elem…...

基于springboot+vue的食疗系统

基于springbootvue的食疗系统 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目背景介绍&…...

sklearn学习-朴素贝叶斯

文章目录一、概述1、真正的概率分类器2、sklearn中的朴素贝叶斯二、不同分布下的贝叶斯1、高斯朴素贝叶斯GaussianNB2、探索贝叶斯:高斯朴素贝叶斯擅长的数据集3、探索贝叶斯:高斯朴素贝叶斯的拟合效果与运算速度总结一、概述 1、真正的概率分类器 算法…...

分享112个HTML艺术时尚模板,总有一款适合您

分享112个HTML艺术时尚模板,总有一款适合您 112个HTML艺术时尚模板下载链接:https://pan.baidu.com/s/1D3-mfPOud-f3vy9yLl-bmw?pwdfph2 提取码:fph2 Python采集代码下载链接:采集代码.zip - 蓝奏云 时尚平面模特网站模板 潮…...

用GDB远程调试运行于QEMU的程序

1. 前言 限于作者能力水平,本文可能存在谬误,因此而给读者带来的损失,作者不做任何承诺。 2. 测试环境 本文使用 Ubuntu 16.04.4 LTS QEMU 环境进行调试。 3. 用 GDB 调试 QEMU 内程序 3.1 编写用来调试的程序 我们用 ARM32 来进行调试…...

20 堆排序

文章目录1 堆排序的概念2 堆排序基本思想3 堆排序步骤图解说明4 堆排序的代码实现1 堆排序的概念 1) 堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为 O(nlogn)&#xf…...

2023最新文件快递柜系统网站源码 | 匿名口令分享 | 临时文件分享

内容目录一、详细介绍二、效果展示1.部分代码2.效果图展示三、学习资料下载一、详细介绍 2023最新文件快递柜系统网站源码 | 匿名口令分享 | 临时文件分享 很多时候,我们都想将一些文件或文本传送给别人,或者跨端传递一些信息,但是我们又不…...

分片策略(二)

分片策略 基本概念 分片键 用于分片的字段,是将数据库或表拆分的字段,比如,我可以使用user_id作为分片键将用户数据分到不同的表中,这里的user_id就是分片键,除了这种单字段分片,ShardingSphere还支持多…...

Qt之调色板类QPalette的使用

文章目录QPalette调色板类前言代码知识点讲解QPalette调色板类 前言 Qt提供的调色板类QPalette专门用于管理部件的外观显示,相当于部件或对话框的调色板,管理他们所有的颜色信息。每个部件都包含一个QPalette对象,在显示时,按照…...

Kotlin 32. Kotlin 多语言支持

Kotlin 多语言支持 对于 Kotlin 来说&#xff0c;当我们新建一个项目时&#xff0c;会默认在 values/ 文件夹下&#xff0c;生成一个 strings.xml 文件。比如说&#xff0c; <resources><string name"app_name">exampleNewProject</string> <…...

【Flutter入门到进阶】Dart进阶篇---DartVM单线程设计原理

1 虚拟机的指令执行设计 1.1 虚拟机的分类 基于栈的虚拟机&#xff0c;比如JVM虚拟机 基于寄存器的虚拟机&#xff0c;比如Dalvik虚拟机 1.2 虚拟机的概念 首先问一个基本的问题&#xff0c;作为一个虚拟机&#xff0c;它最基本的要实现哪些功能&#xff1f; 他应该能够模拟…...

Dem和NvM(NVRAM Manager)的交集

NVRAM&#xff08;NvM&#xff09;提供了在NVRAM中存储数据Block的机制。 NVRAM Block&#xff08;最大大小取决于配置&#xff09;被分配给Dem&#xff0c;并由Dem实现事件状态信息和相关数据的永久存储&#xff08;例如通电复位&#xff09;。 ECU 状态管理器&#xff08;Ec…...

AI神经网络CNN/RNN/DNN/SNN的区别对比

@版权声明: 本文由 ChatGpt 创作; BiliBili: https://www.bilibili.com/video/BV17D4y1P7pM/?share_source=copy_web&vd_source=6d217e0ff6387a749dc570aba51d36fd 引言 随着人工智能技术的发展,神经网络作为人工智能的核心技术之一,被广泛应用于图像识别、语音识别、…...

【JavaWeb】一文学会JPA

✅✅作者主页&#xff1a;&#x1f517;孙不坚1208的博客 &#x1f525;&#x1f525;精选专栏&#xff1a;&#x1f517;JavaWeb从入门到精通&#xff08;持续更新中&#xff09; &#x1f4cb;&#x1f4cb; 本文摘要&#xff1a;本篇文章主要介绍JPA的概念、注解实现ORM规范…...

7.4.分块查找

一.分块查找的算法思想&#xff1a; 1.实例&#xff1a; 以上述图片的顺序表为例&#xff0c; 该顺序表的数据元素从整体来看是乱序的&#xff0c;但如果把这些数据元素分成一块一块的小区间&#xff0c; 第一个区间[0,1]索引上的数据元素都是小于等于10的&#xff0c; 第二…...

微信小程序之bind和catch

这两个呢&#xff0c;都是绑定事件用的&#xff0c;具体使用有些小区别。 官方文档&#xff1a; 事件冒泡处理不同 bind&#xff1a;绑定的事件会向上冒泡&#xff0c;即触发当前组件的事件后&#xff0c;还会继续触发父组件的相同事件。例如&#xff0c;有一个子视图绑定了b…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告&#xff08;肿瘤大小、血液指标&#xff09;&#xff0c;你需要做出一个**决定性判断**&#xff1a;恶性还是良性&#xff1f;这种“非黑即白”的抉择&#xff0c;正是**逻辑回归&#xff08;Logistic Regression&#xff09;** 的战场&a…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

【Linux】C语言执行shell指令

在C语言中执行Shell指令 在C语言中&#xff0c;有几种方法可以执行Shell指令&#xff1a; 1. 使用system()函数 这是最简单的方法&#xff0c;包含在stdlib.h头文件中&#xff1a; #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件

今天呢&#xff0c;博主的学习进度也是步入了Java Mybatis 框架&#xff0c;目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学&#xff0c;希望能对大家有所帮助&#xff0c;也特别欢迎大家指点不足之处&#xff0c;小生很乐意接受正确的建议&…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)

宇树机器人多姿态起立控制强化学习框架论文解析 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架&#xff08;一&#xff09; 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...

2025季度云服务器排行榜

在全球云服务器市场&#xff0c;各厂商的排名和地位并非一成不变&#xff0c;而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势&#xff0c;对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析&#xff1a; 一、全球“三巨头”…...

Oracle11g安装包

Oracle 11g安装包 适用于windows系统&#xff0c;64位 下载路径 oracle 11g 安装包...

Leetcode33( 搜索旋转排序数组)

题目表述 整数数组 nums 按升序排列&#xff0c;数组中的值 互不相同 。 在传递给函数之前&#xff0c;nums 在预先未知的某个下标 k&#xff08;0 < k < nums.length&#xff09;上进行了 旋转&#xff0c;使数组变为 [nums[k], nums[k1], …, nums[n-1], nums[0], nu…...