当前位置:网站首页>公司新来的阿里P6被辞退了,因为写测试用例不规范,躺平的悲哀?
公司新来的阿里P6被辞退了,因为写测试用例不规范,躺平的悲哀?
2022-06-09 14:58:00 【测试大大怪】
前言
测试用例编写是软件测试的基本技能;也有很多人认为测试用例是软件测试的核心;软件测试中最重要的是设计和生成有效的测试用例;测试用例是测试工作的指导,是软件测试的必须遵守的准则。
在这里我们不讨论以上的各种观点,但是综上所述,大家可以看出,测试用例编写这项软技能非常重要且是测试人的必备技能,相信很多人没有质疑。
内容
很遗憾的是,我们公司前阵子高价招了阿里的P6,试用期都没过,赶在端午前辞退了。
阿里P6一般是被要求独当一面,不知道写测试用例有什么用,而仅仅是像工具人一样,在每次提测之前,把测试用例照着需求文档抄一遍,仿佛像是走个过场。
开发提测之后,就照着测试用例点点点,可能一天就走完用例了,开发代码写得真好,测试用例执行完毕都没有测出bug,然后美其名曰:测试完了,达到上线标准。
测完之后,测试用例毫无价值,像随手扔垃圾一样,随地保存,终于无迹可寻。
在他们眼里,从事测试工作,和去东莞进厂打工没什么区别。
反正测试用例写久了,都能成为人人爱戴的熟练工,想着到了35岁,光荣下岗,回老家享受荣华富贵。
最后上线之后,bug一大堆,反而还怪写测试用例浪费时间,且没有用。
这样沉湎于躺平族渐渐的发现自身越来越跟不上技术的日新月异,在互联网行业,不及时提升自己,很容易被“输出到社会”
测试行业其实也遵循了一定的摩尔定律,以前一个熟练的“点工”在一线随便拿个8.9K轻轻松松,但是现在发现已经越来越难找工作了,学历还不太行的话,别说offer了,面试机会都少了很多了。放下“躺平”吧,去学习,去提升自我!
鲁迅曾说过“你每天抽空学习半小时,你会超过你所在行业70%的人”

很多人都说,我也知道这个道理,但是我要去哪学?从哪学起?
带着问题学习是最高效的学习方法。
目录
一.什么是测试用例
二.为什么要写测试用例
三.如何编写测试用例
因此,在介绍如何编写测试用例之前,先看一个软件系统登录功能的测试(如下截图所示):

要做这个登录页面的测试用例,你会从哪些方面思考进行测试呢?
看似简单的页面功能能够设计多少条测试用例完成较全面的测试呢?10条以内?20条?.......
那么在给出上述答案之前,先带大家熟悉一下什么是测试用例?测试用例有什么作用? 然后在结合上述抛出的案例抛砖引玉一起讨论如何编写测试用例?
下面就是此文目录截图:

一、什么是测试用例
测试用例:为了特定的目的(证明软件存在某问题)而设计的一组由测试输入、执行条件、预期结果构成的文档
1、测试用例简单来说就是指导如何做测试的文档,该文档主要记录需要验证被测软件的是否满足需求
2、测试用例表现形式常见的有两种,可以以模板形式展示
1)一种是通过Excel直接编写
——大多数项目中都需要按照这种方式设计编写
2)一种是通过xmind直接整理测试点
——时间紧迫,项目没有强制要求时,可以设计测试点的形式编写 ——对于业务流程类的测试,也可以整理为测试点进行测试
3、设计及执行人员:测试工程师
4、用例的模板:描述编写用例核心内容,一般项目都有自己的设计用例的模板,常见测试用例模板可参照如下:

为了支持一下新入行的朋友们,这里也把我入行多年精心整理的上百份学习资料和讲解视频分享出来,新手入门绝对用得上,一并放在下面了,废话不多说,需要的加入我的学习群点击传送门 免费领取!
二.为什么要写测试用例
为什么要写测试用例,实际中产品出现问题,第一责任人首先想到的是测试为啥没有测到?
产品出现问题了,你为啥没有测出来呢?
当然,除了避免“甩锅和背锅”,其实写测试用例更重要的作用如下:
技术上将需求转化为具体可验证的指标
以文档的形式记录软件可能存在的问题
防止测试过程的活动出现遗漏,提高工作效率
测试工作量的展示
三.如何编写测试用例
既然写测试用例如此重要,那么如何更好的编写测试用例呢?个人认为需要满足如下几点: - 常规思考,设身处地的从用户角度出发(比如:实际用户是这么使用的么,会不会遇到异常情况呢?) - 测试理论方法的支撑(比如:根据需求设计测试用例时,能用到哪些常见的测试用例设计方法?) - 产品的熟悉和经验的积累(比如:已经有过类型项目经验,曾经在某个方面有过问题,当时是如何处理的呢?) 上述的设计用例过程,有个前提,就是对于测试有耐心和毅力,加上日常有意识的思维训练,才会写出全面的用例。
1、常规思考
回归到开篇的问题,对于一个基本的登录页面,按照常规思路能否会想到如下截图的测试点呢?实际,这些测试点都是源于从用户角度出发,结合需求进行细化设计的过程。实际测试中是不是只有这些测试点呢?

2、学习积累
相信大多数测试工程师都能够想到上述基本的测试点,然在实际工作中面对的项目不同,设计测试用例的颗粒度也有不同的要求,如果针对上述登录的模块,更深入一层考虑呢?此时需要对产品的熟悉程度及测试经验的加持,而且这些点的设计是不断学习、熟悉项目、测试积累中得到的。

3、理论支撑
有了常规的思考,有了经验的积累,还需要理论的支撑。测试用例毕竟是通过人去思考设计,这个过程不可避免有疏漏。如何规避?实际就需要测试理论的支撑,个人认为深入思考设计用例不外乎以下两方面:
1)测试用例的设计方法
测试理论中很关键一块就是将需求拆分为具体的测试点,然后根据用例设计方法进行具体的设计,其中拆分需求的关键是熟悉需求,将文档中已有的描述内容,按照用户使用场景、个人测试经验的积累(如果有的话)、把大段的内容拆分成能够直接用用例设计方法的测试点,这样就直接可以通过简明扼要的文字描述转化为Excel的测试用例,在这个过程通俗理解就是拆分细化的过程,直到可以直接写用例验证一个具体的功能点即可。
其中熟知的设计用例方法有:
- 观察法
- 等价类、边界值
- 判定表、因果图
- 流程图、场景法
- 错误推测法等
2)测试设计的思路开拓
倘若按照需求将已有的描述信息都已经拆分完毕了,是不是就可以确保测试没有问题了呢? 其实不然,在上述基础上如果还需要再拓展全面测试,还需要借助于软件质量模型的特性,从这些特性出发,给予测试用例设计者更多的思考空间。这样的设计就更加的全面可靠。
常见软件质量模型特性说明:
- 功能性:功能有没有,好不好用
- 性能效率:对应系统的资源耗费程度及响应时间
- 易用性:容易理解、学习、使用
- 兼容性:能够兼容不同的软硬件平台
- 可靠性:不易出问题,万一出问题容易恢复
- 安全性:对于用户的安全保障(外在的人生安全、内在的信息安全等)
- 可移植性:能否在不同环境条件下无故障运行
- 可维护性:对于后期的修复维护是否方便快捷
因此,对于上述登录功能,按照上述质量模型的思路指导,就得到如下的测试点:

四、写在最后
此时的你再回过头来看看,还会认为登录这个百试不爽的功能就设计十几条甚至几十条测试用例了吗?显然不是那么简单,需要在熟悉需求基础上,进行拆分细化,将常规的思考、经验的积累、理论的支撑结合起来使用,最终才能转化为测试待验证的结果。
熟悉需求上第一步,在此基础上进行测试点的拆分细化,这个过程如果对于复杂一点的功能点,需要借助于测试用例的设计方法,对于页面级的测试点应用最多的不外乎是等价类、边界值。
仅仅熟悉了需要,还需要结合经验的积累,从质量模型的特性出发,进行全面的思考功能点的设计,是否出现遗漏的,是否有项目特殊要求的。
用例的设计不是一蹴而就的事情,好的用例也是需要不断的练习,反复的修改评审,才能编写出卓越的用例。

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。有需要的朋友点击传送门免费领取!!!
如果对你有一点点帮助,各位的「点赞」就是小编创作的最大动力,我们下篇文章见
边栏推荐
猜你喜欢

Hongmeng porting i.mx6ull (VI) kconfig_ GCC_ Mkefile
![[paper] cascade rpn: delving into high quality region proposal network with adaptive revolution](/img/bc/675a4cd11ceb69cdc5be1864003be0.png)
[paper] cascade rpn: delving into high quality region proposal network with adaptive revolution

The panorama of yuancosmos industrial investment, fast step into the new era of yuancosmos!

Design of cache address mapping and transformation and associated directory table in cache memory

Jupyter lab learning notes
![[云原生]Kubernetes可视化界面WEBUI Kubernetes Dashboard](/img/25/9ec90f660b290823c36c1fe5a4c69e.jpg)
[云原生]Kubernetes可视化界面WEBUI Kubernetes Dashboard

Hongmeng transplantation i.mx6ull (V) overview of transplantation

Implementing MySQL master-slave with docker compose

分布式限流之基于Sentinel实现的限流漫谈(一)-概述

【实战】基于Chromedriver的应用及爬虫相关
随机推荐
unity Dots的IComponent使用的列表踩的坑
The panorama of yuancosmos industrial investment, fast step into the new era of yuancosmos!
mongoose连接多个数据库简单例子
各厂商的数据湖解决方案
Halodoc使用 Apache Hudi 构建 Lakehouse的关键经验
鸿蒙移植i.mx6ull(九) 串口移植(基于IMX6ULL)
文档编辑器
鸿蒙移植i.mx6ull(十二) 根文件系统
Geoffrey Hinton最新访谈:不出五年,我们就会破解大脑的运作机制,但不是通过反向传播
Triangular constant strain element (CST) derived from area coordinates
Fcpx plug-in: motion blur FX by Ma
混动大年,比亚迪的风评真要反转?
鸿蒙移植i.mx6ull (七) Liteos-a的编译系统
百度一程序员被判:不满他人接手项目、彰显自己作用、多次对数据库进行删改,犯破坏计算机信息系统罪
道友,日增量百万级业务该如何进行数据设计呢?
自如涨价,会逼退年轻人吗?
王兴张勇徐雷,谁能问鼎本地电商?
请教股票怎么在手机上开户流程?股票开户流程网上开户安全吗?
Hongmeng porting i.mx6ull (11) storage device driver (based on imx6ull)
Su Tao: application of counter sample technology in the field of Internet Security