乐于分享
好东西不私藏

软件测试到底是个什么工作?看这一篇就懂了

软件测试到底是个什么工作?看这一篇就懂了

阅读时间:约 6 分钟

关键词:软件测试 | 零基础入门 | 薪资待遇 | Bug | 测试工程师


01|先说几个真实故事

2018年,波音737 MAX在起飞后几秒内坠毁。最终调查原因是一个传感器软件数据错误——一个代码Bug,让两架飞机、346条人命瞬间消失。

2016年,某电商系统出现”薅羊毛”漏洞,一晚上损失数百万。

你手机里那个”加载转圈转不出来”的App,那个”支付按钮点了没反应”的页面——全他妈是Bug。

所以,什么是软件测试?

说白了:就是找Bug、找软件里一切不对的地方。

用手工或者工具,去验证”我预期的结果”和”软件实际跑出来的结果”之间到底差多少。差出来的那个东西,就是Bug。

就这么简单。


02|开发自己不会测吗?为什么需要你?

很多人问我:软件开发工程师不能自己测自己的代码吗?

当然不能。 原因就三个字:

思维定式。

“开发自测的时候会有一个思维定式——我后台写了哪些业务,我就去验证哪些。没写的,我根本不会想到去验证。”

而且,开发写的代码是自己的”亲儿子”,谁舍得往死里测?

但你不一样。你是专业的第三方,你的任务就是想方设法把问题全部挖出来。

这就是你存在的价值。


03|Bug不只是报错,还包括这5种

你以为Bug只是”点按钮崩了”?

错。Bug有5种形态:

类型 举例
少功能 要求有”忘记密码”,结果根本没有
多功能 电商系统多了个”身份证登录”,但收集敏感信息违规
功能错误 输入正确账号密码,结果登录失败
隐性缺陷 登录成功了,但没跳转到主页,体验极差
体验差 加载要3秒,页面布局混乱,找不到按钮

任何一条,都是Bug,都要记录在案。


04|测试原来分这么多种

很多小白以为测试就是”点点点”,太天真了。

测试至少有3种分类维度:

① 按阶段分(软件生产流程)

造一辆车 → 先测零件(单元测试)→ 组装后测(集成测试)→ 整体验车(系统测试)→ 客户提车(验收测试)

② 按你能不能看到代码分

类型 你能看到代码吗 测什么
黑盒测试 ❌ 看不到 只测功能:点这个按钮对不对
灰盒测试 ⚠️ 看一部分 测接口:数据传得对不对
白盒测试 ✅ 完全透明 测代码本身:逻辑有没有问题

③ 工作中常说的特殊测试

  • 冒烟测试:开发提测了,先测核心功能能不能跑,跑不通直接打回

  • 回归测试:修复了一个Bug,顺便再测一遍相关功能,确认没引入新问题

开发修Bug的时候,有可能会引发新的Bug——这是常态,所以回归测试必须做。


05|一个软件要从8个维度去”验收”

专业测试工程师拿到一个软件,不只是”功能能不能用”。

要测8个维度,质量模型:

维度 测什么
功能性 功能数量对不对,实现准不准
性能 10000人同时在线会不会崩,加载快不快
兼容性 不同手机、不同浏览器、不同系统能不能用
易用性 用户一学就会吗,体验顺不顺
安全性 数据传输加密了吗,密码泄露风险有吗
可靠性 跑24小时会不会死机、崩溃
可移植性 数据迁移到新系统方不方便
可维护性 后期加新功能,现有代码改起来难不难

国内实战中,前5项是必测的。 后面三项更多是架构层面的要求。


06|测试用例:把”测试点”写成标准文档

光脑子里知道测什么还不行,要写成文档,方便自己和团队执行。

这就是”测试用例”,有8大要素

① 用例编号(项目简称-模块-序号)② 用例标题(预期结果+测试点)③ 所属模块④ 优先级(P0最高→P3最低)⑤ 前置条件(执行前需要准备什么)⑥ 测试步骤(一步一步怎么操作)⑦ 测试数据(具体输入什么值)⑧ 预期结果(应该出现什么)

举个例子,登录功能的一条用例:

用例编号:CRM-Login-001用例标题:登录成功(账号正确+密码正确+勾选协议)前置条件:账号已注册,且已打开登录页面测试步骤:①输入账号 ②输入密码 ③勾选协议 ④点击登录测试数据:账号=已注册手机号,密码=8位合格密码(大小写+数字)预期结果:登录成功,跳转到个人主页隐性结果:显示”欢迎回来,XXX”

数据要独立写,不要合并在步骤里——后期修改时你就知道为什么了。


07|发现Bug怎么提交?给开发一个精准的”病历单”

发现Bug不是截个图丢给开发就完事了。

要填写一份”缺陷单”,核心内容包括:

  • 指派给谁:前端还是后端,选对人

  • Bug类型:代码错误?设计错误?

  • Bug标题:带上测试点+预期结果+实际结果,做到”见名知意”

  • 严重程度:特别严重 / 高 / 中 / 低

  • 优先级:今天修 / 明天修 / 下个版本

  • 复现步骤:前置条件→步骤→数据→实际结果

  • 附件:截图、日志文件,帮助开发定位

写Bug标题有个小技巧:带上”测试点+预期结果+实际结果”,别人一看就懂。


08|工资真的高吗?市场需求到底怎么样?

说点实际的。

根据行业招聘数据:

工作年限 平均月薪
1-3年 11K+
3-5年 16K+
5年以上 22K+

而且,相对于开发岗位,测试的工作强度相对更可控——开发编码的时候,测试更多在准备用例、等提测、执行测试。

“一个人也许走得很快,但一群人会走得更远。”

再加上AI工具的加持,现在测试工程师可以用AI自动生成测试用例、自动写自动化代码,效率翻倍。 越早学会用AI的测试,薪资越高。


09|零基础怎么快速入门?学习路径来了

小白入门软件测试,推荐这样学:

  1. 软件测试基础(测试定义、分类、原则)

  2. 客户端测试(Web端功能测试 + App功能测试)

  3. 测试用例设计(8大要素 + 等价类/边界值等方法)

  4. 缺陷管理(Bug提交 + 跟踪流程)

  5. 兼容性/性能/安全等非功能测试

  6. AI工具赋能(用AI提效整个测试流程)

记住一个原则:

  • 基础理论 → 理解即可

  • 客户端测试 → 理解 + 动手练习

  • AI工具使用 → 掌握提问技巧


📌 总结一下:

软件测试,就是找Bug的工作。

它不需要你会写很深的代码,但需要你有缜密的逻辑细心的眼睛、以及一颗不放过任何问题的较真心

门槛低、需求大、薪资可观——对零基础想进IT行业的人来说,软件测试是性价比最高的切入口。


你现在在哪个阶段?有任何测试相关的问题,评论区聊。

如果觉得有用,转发给你那个想转行的朋友,说不定救了他一命。

下期见。