美文网首页
教你设计出让面试官眼前一亮的测试用例!

教你设计出让面试官眼前一亮的测试用例!

作者: 白码会说 | 来源:发表于2020-10-21 22:23 被阅读0次

Time will tell.

今天我们来聊一聊测试用例如何设计,以及如何提高测试用例的覆盖度。

写测试用例是每一个测试工程师入行首先就要掌握的技能,也是很多测试工程师的日常工作。

可能你看过不少设计测试用例的网上视频或者帖子,一堆测试用例方法让人一头懵逼。

比如等价类划分法、边界值分析法、场景法、因果图方法、判定表驱动分析法、正交实验设计方法、功能图分析方法、场景设计方法 …


从应付日常工作来讲,真正具有实用价值并常用的只有前3种方法:等价类划分法,边界值法以及场景法。

边界值法和等价类划分法通常配合使用,等价类划分又分为有效等价类和无效等价类。

下面以一个登录功能账号输入为例,要求只能输入字母,数字和下划线,位数要求6到19位。来讲一下这3种方法:

1、有效等价类

拿到这个需求你不可能拿6到19位之间的位数去穷举,那是无穷无尽的。

运用等价类的划分的思想我们就可以取6位,19位,7位,18位,同时还可以取一个中间位12位更具代表性。

然后确定位数之后,就可以设计用例了,字母,数字,下划线,分别排列组合分散开即可。

2、无效等价类

就是不满足条件的取5位和20位去验证即可。除此之外还要考虑输入为空以及非法字符这两种情况。

3、边界值法

这个比较简单就是取边界去验证,以及验证这个边界附近的数据即可。

4、场景法

就是需要考虑到各种各样的场景,比如该账号未注册就去登录,以及各种异常场景都需要考虑。一般,写好测试用例,都会开案例评审会议,就是防止场景遗漏。


设计测试用例的方法就那么几种,但是不同水平的测试工程师设计出来的用例覆盖度有很大差别。好比大家把数学公式都掌握了,但是具体到解题考试,不同人解题也会千差万别。

下面以一道大家经常遇到的面试题为例 —— 如何设计用户登录功能的测试用例?

看到这里,你可能会觉得这也太初级了吧,别急,先把下面的看完再说。

一个刚入行的初级测试,可能设计出下面的测试用例:

  1. 输入已注册的用户名和正确的密码,验证是否登录成功。
  2. 输入已注册的用户名和不正确的密码,验证是否登录失败,并且提示信息正确。
  3. 输入未注册的用户名和任意密码,验证是否登录失败,并且提示信息正确。
  4. 用户名和密码两者都为空,验证是否登录失败,并且提示信息正确。
  5. 用户名和密码两者之一为空,验证是否登录失败,并且提示信息正确。
  6. 如果登录功能启用了验证码功能,在用户名和密码正确的前提下,输入正确的验证码,验证是否登录成功。
  7. 如果登录功能启用了验证码功能,在用户名和密码正确的前提下,输入错误的验证码,验证是否登录失败,并且提示信息正确。

在列出了这些测试用例后,你可能觉得比较满意了,因为你感觉已经把自己的知识都用在这些用例设计当中了。

然而仔细想一下,这些用例真的覆盖到所有场景了吗?

再来看一下一个有经验的中级工程师还会增加哪些场景呢?

  1. 用户名和密码是否大小写敏感。
  2. 页面上的密码框是否加密显示。
  3. 后台系统创建的用户第一次登录成功时,是否提示修改密码。
  4. 忘记用户名和忘记密码的功能是否可用。
  5. 前端页面是否根据设计要求限制用户名和密码长度。
  6. 如果登录功能需要验证码,点击验证码图片是否可以更换验证码,更换后的验证码是否可用。
  7. 刷新页面是否会刷新验证码。
  8. 如果验证码具有时效性,需要分别验证时效内和时效外验证码的有效性。
  9. 用户登录成功但是会话超时后,继续操作是否会重定向到用户登录界面。

是不是很意外,没想到一个简单的用户登录居然还能设计出这么多用例,原来自己开始想的,还有那么多场景遗漏。

再来想想,上面的这些用例主要从功能层面进行考虑、安全考虑了吗?兼容性考虑了吗?性能考虑了吗?

接下来就来看看大佬之所以成为大佬,凭什么他可以定级高级资深测试工程师且每月2、30K的原因。

安全角度考虑测试用例:

  1. 用户密码后台存储是否加密。
  2. 用户密码在网络传输过程中是否加密。
  3. 密码是否具有有效期,密码有效期到期后,是否提示需要修改密码。
  4. 密码输入框是否不支持复制和粘贴。
  5. 密码输入框内输入的密码是否都可以在页面源码模式下被查看。
  6. 用户名和密码的输入框中分别输入典型的“SQL 注入攻击”字符串,验证系统的返回页面。
  7. 同一用户在同一终端的多种浏览器上登录,验证登录功能的互斥性是否符合设计预期。
  8. 同一用户先后在多台终端的浏览器上登录,验证登录是否具有互斥性。

性能压力测试角度考虑测试用例:

  1. 单用户登录的响应时间是否小于 3 秒。
  2. 单用户登录时,后台请求数量是否过多。
  3. 高并发场景下用户登录的响应时间是否小于 5 秒。
  4. 高并发场景下服务端的监控指标是否符合预期。
  5. 长时间大量用户连续登录和登出,服务器端是否存在内存泄漏。

兼容性角度考虑测试用例:

  1. 不同浏览器下,验证登录页面的显示以及功能正确性。
  2. 相同浏览器的不同版本下,验证登录页面的显示以及功能正确性。
  3. 不同移动设备终端的不同浏览器下,验证登录页面的显示以及功能正确性。
  4. 不同分辨率的界面下,验证登录页面的显示以及功能正确性。

最后

看到这里,你还会觉得用户登录功能的测试非常简单、不值一提吗?下次面试的时候你如果从这些方面去回答,让面试官立即为你眼前一亮!

而这些都是需要经验积累的,但并不妨碍我们在设计测试用例的时候从多个角度进行考虑,比如安全,性能,兼容性等等。那么,日积月累,从小白进阶大牛只是时间问题!

絮叨

以上就是今天跟大家分享的东西,希望能对看过本篇文章的小伙伴们有所帮助。如果你喜欢软件测试这个行业的话,也可以加入我们175317069一起学习,这里有行业深潜多年的测试人技术分析讲解。也会有各项测试资料,面试题资料链接发放。期待你的加入!

喜欢的话,欢迎【评论】、【点赞】、【关注】礼貌三连~

Time will tell.(时间会证明一切)

相关文章

  • 教你设计出让面试官眼前一亮的测试用例!

    Time will tell. 今天我们来聊一聊测试用例如何设计,以及如何提高测试用例的覆盖度。 写测试用例是每一...

  • 可复用测试用例研究(用例库)

    软件测试的关键环节是设计和执行测试用例。测试用例的质量与测试人员的技能、经验以及对被测软件的理解密切相关。如果测...

  • xmind编写测试用例

    设计测试用例 如和设计测试用例 1、确立等价类后建立等价类列表2、为每个等价类规定一个唯一的编号3、设计一个新的测...

  • 软件测试流程设计—黑盒测试用例设计方法

    第1章 测试用例设计方法 测试用例设计方法包括黑盒测试用例设计方法和白盒测试用例设计方法,下面 分别进行介绍。 1...

  • 灵魂三问:什么是接口测试,接口测试怎么玩,接口自动化测试怎么玩?

    前言 最近在找工作,因为是做纯服务端测试的,所以面试过程中面试官难免会问,怎么设计接口测试用例,怎么做接口自动化测...

  • 如何提高测试效率

    个人1.先明确测试流程2.获取有效信息,明确需求3.设计测试用例规范,沟通效率(测试用例八大要素:测试用例编号,测...

  • 测试用例设计经典面试题

    首先说明的是,遇到这样的测试题目,首先应该反问面试官,需求是什么样的,比如是测什么样的杯子。 因为设计测试用例的规...

  • 简析app测试用例的作用

    测试用例的设计是整个测试工作中最重要的一环,也是整个测试流程中难度最大的部分。测试用例是指导整个app的测...

  • 测试总结

    测试基本概念 测试用例设计白皮书--测试用例基本概念测试用例设计白皮书--等价类划分方法测试用例设计白皮书--边界...

  • 初级软件测试总结

    1.测试用例编写 1.1 设计测试用例的依据 根据需求文档,项目设计文档,接口文档,系统使用手册等来设计测试用例。...

网友评论

      本文标题:教你设计出让面试官眼前一亮的测试用例!

      本文链接:https://www.haomeiwen.com/subject/cwlymktx.html