进公司第一天当老板问:“测得怎么样了?”我懵逼了

news2025/2/25 3:05:32

当我入行做测试头两份年,觉的测试工作有时候似乎挺苦逼的,我太难了……

前言

  说实话,我真想从上面去掉"似乎"两个字,软件测试人,就是苦逼!有的人曾抱怨过开发很糟糕,但我们没办法要求开发在会写代码的同时还要把代码写好,没有过多的bug,因为这就是我们的工作;有的人曾吐槽过自己的老板很较真,但我们没办法不接受领导们的批评指责,因为批评代表我们还有继续提升的价值……除了批评外,我想每个测试员都怕被无时无刻的刨根究底,无止无休的问长问短。

你测的怎么样了?

  现在如果你问我做测试做了这么久最怕被问什么?我想一定是领导那句:测得怎么样了?!

  回头想想,以前在公司做测试工作的时候,自认为不怕被老板批评,因为我一直都认为能被老板批评,其实说明老板还是对自己报有期望的,否则他有绝对权力可以不批评你,直接让你"走路"的,而且最重要的是,批评之后就有了改正的机会,可以提高自己了。

  但即便如此,测试人员仍然有一些最怕被问的问题,例如:测得怎么样了?还有问题吗?什么时候能测试结束啊?如何对测试人员进行考核啊?…

  不知道各位测试同仁是如何看待这项问题的,我记得当时一听到这些问题我就头皮发麻,然后就胡乱的应付几下就了事了。今天我们就先来说一说第一个最怕被问到的问题:“测得怎么样了?”

  首先我们先分析一下为什么管理层喜欢问这个问题,其实如果抛开测试的内容(这个问题就变成:干得怎么样了?),这个问题对于一个上级来询问下级的工作是最普通不过的了,但是如果加上测试两个字,你会发现这个问题几乎没有办法回答。

  因为凡是有一点测试常识的人都会知道,测试是不可能有尽头的,无论你覆盖多么强,测试多么细致,一定会有没有测试到的"死角",这些其实都是客观存在的事实,谁也不可能改变。

这样回答

  对于"测得怎么样了?"这类问题若想回答的让领导满意,至少要做到以下三点:

  首先我们作为测试人员要就测试工作的这个特点和管理层进行一定的沟通,先要让上级接受一个事实:测试无论如何都不可能做到"零缺陷"。

  如果您的上级也同意这个客观存在的现实,那么接下来我们还必须说清楚另外一件事情,那就是我们虽然做不到零缺陷的测试,但是我们有责任要清楚地告知管理层我们测试过程中的"死角"有哪些?

  清楚了"死角"之后,最后要分析这些测试死角可能带来的风险是什么?

  以上这些内容分析清楚之后,只能说问题交代清楚了,但是这件事远远没有结束,如果要想比别人做测试更有成就,我们还要做以下几个方面的工作:

  针对分析出来的风险,要继续明确这些风险可能会对我们目前的项目造成的危害有哪些?

  如果发生了这些风险,相关的解决措施是什么?

  这些方案的实施造成的成本和时间的损耗是多少?…

初入测试职场

       蓦然回首,软件测试风风雨雨这5年,起初每天的工作只是鼠标点点点,别问我测试用例咋写,我还真不知道,闲的时候真的怀疑自己的存在价值。但那只是我以为,时间荏苒,工作越久越能体会测试才不是这么简单,只会点点鼠标,并不能走的长远,工资也渐渐的无法满足生活需求,恍然明白,对于一个测试员而言,自己没有一个很好的框架,完全跟着感觉走,根本写不出好的测试用例。

  测试绝对不是一个人闷头干,避免不了与人打交道,其中与开发沟通交流的最多,倘若遇到好的开发,流程是这样的:你提出bug→开发找原因→开发找代码问题→开发修改;倘若遇到不好说话的开发,流程是这样的:你提出bug→开发不搭理你→雨我无瓜→讲一堆开发语言→继续不搭理你→你只能生闷气。

  所以,为了与开发沟通方便,我开始学习编程语言,什么Python、Java……不求写出完美的代码,但求与开发缩小代沟,同时对于我日后软件测试的职业发展肯定会有帮助。

  再继续我的测试生涯,忽然发现,测试这一行,总是千差万别,自己会的别人不会,而别人会的自己很多不会。记得有一次面试一家上市公司,面试官问我最擅长什么,我突然哑口无言,总不能说擅长学习吧,总不能说擅长上网搜索资料吧,总不能说擅长点点鼠标吧,总得有拿的出手的东西吧,总得有出类拔萃的技术吧!

优秀测试工程师成长记

  快速理解业务→梳理项目需求→测试用例设计……这些都是作为一名测试员的基础要求,如果想更好的提高工作效率,会做自动化测试→性能测试→安全测试等真的很有必要,同样每项测试都离不开深入理解业务→整理定位测试需求→设计合理的测试用例→筛选合适的测试工作→掌握测试工具的使用→分析测试结果……

  如果想要使用测试工具,总得会编写代码吧,单单只会录制回放,同行见同行,肯定会成为人家的笑柄,同样,分析结果也少不了代码的加持、硬件设备的了解以及数据库的使用……

  总而言之,无论欠缺了哪一样,对于测试员而言都是给自己挖了一个坑,没有充分的证据,自然会被开发怼,没有足够的技能,当然会被领导批,唯有不断的提升自己,不断地学习学习,才能把坑填平,才能升职加薪拥有更好的职业发展。

  如果能做到以上这些方面,你做测试就一定会让老板非常放心,即使出现了问题,大家也都提前有准备。那你一定也是老板最得力的左膀右臂。加油吧!同志们,为了我们更好的未来,一起积极来想办法解决这些难办的问题吧!

我用了五天的时候整理了今年我认为软件测试就业的主流技术栈大纲,由于内容实在太多,我就能弄成了一张长图,正在学习测试的小伙伴可以通过点击下面的小卡片
https://jq.qq.com/?_wv=1027&k=3T9tmL0thttps://jq.qq.com/?_wv=1027&k=3T9tmL0t

学习建议

1、一般来说,测试新人的话首先需要把基础打好,测试理论基础可以通过看一些经典书籍或网上也有很多免费的资源,选择前两本基础的看,你会受益匪浅。

2、刚开始不太建议加入过多技术群或其他论坛提问,初期遇到问题可以自己搜索自己尝试解决,当然需要控制一个止损点,不要为一个问题耗费太长时间

3、自学基础的同时一定要做好笔记,且一定是通过自己的理解后做的。可以使用思维导图把前后学到的东西给关联起来

4、读完一本书或一个阶段结束后,可以自测一下,通过找一些经典的笔试题或一些istqb中的题目,来巩固或查漏补缺,有针对性的再次巩固学过的东西

5、接下来可以找一些项目来做或去众测平台看一些基本的项目测试流程,包括基本测试文档的书写规范等等,testin众测平台是一个锻炼的不错平台,至少测试用例设计、执行及bug探索提交缺陷都是挺好的。

6、目前有好多平台会开设一些免费的公开课,通过技术讨论组可以接收消息推送,设定好时间听一些专业领域的测试方法,可以快速了解到大体的流程。(一定要经过严格筛选,选择质量高的,否则会浪费一大部分时间):

学习路线

第一阶段 测试基础

测试基础是软件测试最最最重要的部分,只要你是做测试,不管是什么测试,测试的基础、理论知识都是必须学会的。
最好学到什么程度呢,最好是能够理解,并能够用自己的话给复述出来。
毕竟面试初级测试的时候,问的问题都是从基础理论上进行考核的。
那测试基础有哪些内容呢?

测试的定义、测试的分类、测试的方法、测试的生命周期。
测试计划、测试方案、测试策略、测试用例的编写。
BUG的定义、BUG的分类、BUG的六要素、BUG的生命周期。
测试和开发流程的关系、瀑布流、V字形、W字型(双V)、螺旋型、敏捷等等。
PDCA、5W2H等分析管理的方法
质量管理体系CMMI(了解)
嗯,大概就是以上的内容吧,以上全部都是理论和文档能力、只要你肯背、肯写,都是能独立的掌握的。

第二阶段 常见的测试工具

测试工具永远是软件测试人员的得力助手,不能完全依赖工具,但也不能没有工具,在学习软件过程中,要著中软件测试工具的使用,下图覆盖初、中级软件测试工程师所需具备的测试工具,要想学好,下手学习吧。

混在软件测试职业圈,工具千千万,不可能每个都会用,至少要知道有哪些工具可用,什么时候该用什么工具,每个工具能解决什么问题,然后再深入应用几款工具即可,下面就带大家总结一下。

测试管理工具

禅道:简单好用,市场主流,互联网行业居多
Jira:简单好用
QC/ALM:复杂,收费,电信/金融行业使用较多
bugzilla:功能简单
svn:代码和文档管理工具
git:但是多分支管理比svn好

接口测试工具

Jmeter(开源)
postman
SoapUI
推荐使用 jmeter 和 postman。

性能测试工具

loadrunner:大而全,要学精通还是有点难度,重量级工具,过去和现在都是行业老大
jmeter:基于java平台的性能开源测试工具,其实也很强大,而且比较好用
Locust:基于python的一个性能测试工具

白盒测试工具

junit/testng:java下的单元测试框架
unittest/pytest:python下的单元测试框架
cppunit:跨平台的c++单元测试框架
PhpUnit:Php语言下的单元测试框架
TestBed:一个重量级的白盒测试软件,可以进行单元测试、集成测试、静态测试,军工行业常用
Klockword:静态测试工具,军工行业常用

持续集成工具

Jenkins:比较常见的一种CI工具
Hudson

网络测试工具

以HTTP/HTTPs协议为主,网络测试工具有:
wireshark
fiddler
charles

app自动化工具

appium:这个应该算是目前最流行的基于app的自动化测试框架了
uiautomator:安卓自动化测试框架,基本上支持安卓的所有事件操作
Monkey:安卓自带的测试工具
Monkey Runner:Monkey改进版,支持自己编写脚本测试,用Python语言
Robotium:一款国外的Android自动化测试框架,用法比较

web安全测试工具

appscan:算是用的非常多的一款工具了,扫描后能够将绝大部分的漏洞找出来
fiddler:网络抓包工具
burpsuite:暴力破解、抓包工具
skipfish:这是一个轻量级的安全测试工具,处理速度很快,每秒可处理2000个请求。

第三阶段 代码学习

好了,学完了以上两个部分,恭喜你,你已经是一个出色的初级测试工程师了。
接下来,你要考虑你的发展方向了
是成为一个自动化测试工程师呢?
还是性能测试工程师呢?
还是安全测试工程师呢?
啊!这个问题好难!我也不知道该怎么选。
反正我啥都会一点,哪个岗位都能去面一面。
关于方向的选择,看我的这篇文章

嗯,相信你心中已经有了答案了,那我们继续往下面说。
这个阶段,我们应该学习代码了,关于编程语言的选择,我推荐Java或者python。
还有数据库也是必须掌握的!在工具篇的学习里,我认为你已经可以掌握数据库的相关的应用了!
所以现在各位可以去学习编程语言了,
不过不用像开发那样,学的那么深入。
比如Java,只需要学完JavaSE的部分就够你用了。 python的话也是一样的,把基础的部分学完就行了。
总之前期你两者二选一的学习就OK了。
啥?你问我学的啥。
我当然是两种都会啊
哈哈哈哈哈哈哈,惊不惊喜!意不意外! 

自动化方向

等你代码已经基本掌握了,嗯,很好,接下来就要学习各种自动化测试了。

各种单端测试框架:unittest(python)、pytest(python)、JUnit(java)
WEB自动化测试框架:selenium(适用于java\python\javascript)
APP自动化测试框架:appium(适用于java\python\javascript)
以上的内容,根据你学的语言进行选择。
appiunm和selenium根据你参与的项目进行选择。
不过无所谓了,反正迟早都要学会的。
这部分的教程太多了,你学会了编程的基础后,随便百度,好多博客论坛都有教程。
而且凭你那时候的水平,你都能轻松的看懂。

性能方向

对loadrunner和jmeter的掌握更加的深入。
可以手写脚本、脱离录制。
学会了多线程编程、能够手写java或者python、不用工具直接实现压测。
学习linux,毕竟性能总是和服务器打交道的。
学习系统架构的相关知识、方便你更容易的分析系统瓶颈。
说实话、性能方向的提示更难、因为需要掌握的东西太多了。
性能测试做深入了,基本上就是架构师的水平了。
可能你现在看着这个性能方向的学习一脸懵逼。
没关系、等你把上面的编程语言学会了你就不懵逼了。

安全方向

渗透测试
SQL注入
暴力破解
脱库
等等
其实安全测试基本上偏向于网络攻防了,也就是传说中的黑客了,不过我们都是好人,这个的发展方向就是白帽子。
推荐知道创宇的学习体系。
我估计你看到这里就更懵逼了。
没关系、等你把基础的东西学会就知道我在说啥了。
毕竟你现在还是一个小白嘛。
不要去纠结这种小事。

各位在这个阶段,正常情况都应该是中级测试工程师的水平了。

第四阶段 架构学习

前三个阶段学习完成后,各位就应该考虑怎么写代码更合理了。
怎么去测试更全面。
怎么才能更好的保障项目的质量。
我认为,在这个阶段,应该回头重新学习一遍测试基础。
因为这个阶段的提高是思想、方法的提高了。
上面讲的都是教你应该怎么做。
在这个阶段你要自己去发现、为什么要那样做。
跨过了这个阶段就基本上可以成为专家了。
学习都是水到渠成的,在这个时候,你应该已经掌握了不少框架了,甚至自己也能开发合适的框架了。
自动化测试框架、性能测试框架等等。
已经有了属于自己的一套东西了。
在群里或者论坛上去装逼、别人都会尊称你一声大佬了。
可能你也学会了一些其他的技术了,甚至在往全栈等方向跨进了。
总之,到了这个阶段就没什么学习路线了。

最后

相信你如果掌握了上图上面所有的知识技能,并且能够灵活的运用的话,月薪20k以上并不会是什么问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/619114.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

用AI生成思维导图的方法

写在前边: 这篇文章很简单,只为给自己做个记录。并且做一个简单的思考:明明很容易的东西,一旦陷入了思维困境中,就无法找到出去的路。这时候需要扩展思维或者他人提点。 正文: 就挺尴尬,之前…

计算机毕业论文内容参考|基于python的农业温室智能管理系统的设计与实现

文章目录 导文文章重点前言课题内容相关技术与方法介绍技术分析技术设计技术设计技术实现方面系统测试和优化总结与展望本文总结后续工作展望导文 计算机毕业论文内容参考|基于python的农业温室智能管理系统的设计与实现 文章重点 前言 本文介绍了一种基于Python的农业温室智…

玩过Tauri和Electron,最终我选择Flutter进行跨平台应用开发

Flutter、Tauri 和 Electron 都是现代桌面应用程序开发的流行选择,每种技术有其独特的优缺点,下面我们就来对它们进行一个全面的技术对比。 一、Flutter Flutter 是 Google 推出的一款开源的 UI 工具包,用于构建高性能、高保真度的移动、We…

2023年6月杭州/广州/深圳NPDP产品经理认证找这里

产品经理国际资格认证NPDP是新产品开发方面的认证,集理论、方法与实践为一体的全方位的知识体系,为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。 【认证机构】 产品开发与管理协会(PDMA)成立于1979年,是…

从搜索电商,社交电商到兴趣电商如何进化

【搜索电商】需求>联结>信任 淘宝、天猫、京东这些是属于什么电商? 答:这些都是属于搜索电商。 某宝,某东等用户有需求,才能产生主动寻找商品的触点,由第三方担保,产生信任。 试想一下,我…

高逼格的 SQL 写法:行行比较

码农code之路 2023-06-01 08:28 发表于天津 环境准备 需求背景 循环查询 OR 拼接 混查过滤 行行比较 总结 环境准备 数据库版本:MySQL 5.7.20-log 建表 SQL DROP TABLE IF EXISTS t_ware_sale_statistics; CREATE TABLE t_ware_sale_statistics (id bigin…

面向过程 VS 面向对象

学习编程, 基本功是掌握编程语言,但编程的本质是逻辑,所以编程思维的培养也很重要。面向过程和面向对象是两种重要的编程思想,下面讲述一下这两者的区别和优缺点比较。 1. 面向过程 面向过程是一种以事件为中心的编程思想&#…

cmake编译报错

CMake Error :The source.. 此处大概意思是一个文件地址does not match the 另外一个文件地址so used to generate cache. Rerun cmake...解决方法: vscode 快捷键ctrl shift P ,点击第一行的删除cmake 缓存 或者将 build 下的 CMakeCac…

算法百花齐放:探索常见算法的精妙之道

在计算机科学的领域中,算法是一项关键而令人着迷的技术。它们是解决问题、优化效率以及创造智能系统的核心。从简单的排序和搜索任务到复杂的机器学习和深度学习应用,常见算法为我们提供了解决各种挑战的有力工具。在本篇博客中,我们将探索常…

chatgpt赋能python:Python如何过滤某个字母——关于SEO的建议

Python如何过滤某个字母——关于SEO的建议 SEO(搜索引擎优化)是现代网络营销中的一个重要概念。为了让自己的网站在搜索引擎排名中更加靠前,许多管理员和开发人员都在使用Python等编程语言来过滤特定的字母或符号,以优化关键词的…

linux服务器更新yum源,安装 dnf包管理器

进入yum目录 cd /etc/yum.repos.dls 查看 备份 将“CentOS-Base.repo”重命名备份为“CentOS-Base.repo.backup” mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup下载yum源并查看 下载对应版本 repo 文件, 放入 /etc/yum.repos.d/ (操作前请…

MAC 安装配置Tomcat

一、安装Tomcat 1、首先到官网下载Tomcat:https://tomcat.apache.org/download-80.cgi 2、解压tomcat文件,可以通过快捷键(commandshiftG)把它放入/Library(资源库中) 二、用终端打开Tomcat 1.在Bin目录下 打开终端 2.授权bin目录下的所有操作:终端…

Gradle Kotlin 规范插件用于模块化结构 - 共享构建逻辑

Gradle Kotlin 规范插件用于模块化结构 - 共享构建逻辑 我们中的许多人都遇到过Groovy的困难,并习惯于将其转换为Kotlin DSL。 然后,作为Android工程师,在完全使用Kotlin编写的项目上工作是纯粹的喜悦。 我们假设采用基于功能的模块化应用程…

PLSQL Developer 14安装

资源 百度网盘: 链接:https://pan.baidu.com/s/1A4DeaKPF7y-0o90nVKFbZA?pwd6udw 提取码:6udw阿里网盘: PLSQL Developer 14破解版 https://www.aliyundrive.com/s/zUdgF98VCE3安装步骤 解压安装包后,获得PLSQL De…

chatgpt赋能python:Python如何访问网页

Python如何访问网页 Python是一种被广泛用于web开发、数据科学和人工智能的编程语言。但是,你知道Python还可以用于访问网页吗?在本文中,我们将介绍Python如何访问网页,帮助您了解Python的这一方面,并掌握它的实际应用…

什么是快捷支付?

快捷支付是一种便捷的支付方式,它允许用户使用预先绑定的银行卡或支付账户进行快速支付,无需重复输入卡号、密码等详细信息。 编辑搜图 请点击输入图片描述(最多18字) 在快捷支付中,用户可以在商家网站、移动应用或支…

详解YOLOv6.2 Repvgg-style 的高效backbone:EfficientRep

论文地址: https://arxiv.org/pdf/2302.00386v1.pdf github: https://github.com/meituan/YOLOv6/releases I. 引言 自从VGG在图像分类任务中取得成功以来,卷积神经网络设计已经引起了学术界和工业界的广泛关注。目前已经提出了大量经典网络,如Inception和Resnet等。这些精心…

【论文阅读笔记】Fast Bilateral Filtering for the Display of High-Dynamic-Range Images

论文地址:https://people.csail.mit.edu/fredo/PUBLI/Siggraph2002/DurandBilateral.pdf 论文小结 本文提出方法的目标是压缩高动态范围图像,使其能够用于显示。它可以在保留细节的同时降低对比度。   基本原理是将图像分为两个尺度:编码大…

软考知识总结

文章目录 一、计算机系统知识2. 总线包括:数据总线,地址总线,控制总线3. 原码 反码 补码 移码的转换4.计算机指令-流水线和吞吐率5. 漏洞扫描系统基本概念6.CISC和RISC7.[海明码计算](https://blog.csdn.net/alzzw/article/details/123402876…

MVCC在Mysql中的运用

MVCC到底是个啥? 定义: 多版本并发控制,字面理解,在并发过程中利用多个版本进行合理控制(反正我就是从字面这么理解),很明显,这个东西是个抽象的概念,事实也是如此。它主要是出现在…