如何编写一条高质量测试用例

 

测试场景: 为登录功能设计测试用例

测试员为什么要会编测试用例

测试员的目标是要保证系统在各种场景下的功能是符合设计要求的。而测试用例就是测试员想到的测试场景。(这也是高级别的测试员即使不会代码也能找到较好工作的原因)

编写测试用例的思路

等价类,边界值,正交 判定表 因果图 状态迁移图 场景分析 错误猜测法,其中等价类和边界值是最基础最重要的 我的思路是80%的用例使用这两种写,剩余的20使用其他方法。(其他测试方法是对等价类和边界值做了抽象) 等价类 将可能的场景分为一个有效等价类和多个无效等价类,后续只要从每个等价类中任意选取一个值进行测试,就可以用少量具有代表性的测试输入取得较好的测试覆盖结果(等价类:一组数据或因素对程序产生的影响是一样的) 边界值:使用等价类筛选后,选取边界上的再次进行验证(正好等于、刚刚大于或刚刚小于边界的值作为测试数据)

为登录功能设计测试用例 输入框:用户名 输入框:密码 按钮: 登录 功能 用户名

  • 等价类:
    • 有效的等价类:已经注册的用户名;已注册但是不合法的用户名
    • 无效等价类未注册但是合法的用户名; 已注册但是不合法的用户名(特殊字符;长度); 未注册的用户名 , 空,空格
  • 边界值: 空,长度恰好在需求范围外 特殊字符 密码
  • 等价类
    • 有效等价类:与用户名对应的正确的密码;
    • 无效等价类: 与用户名对应的正确的密码;空,不正确的密码,不合法的密码(SQL注入) 结果
  • 等价类:
    • 有效等价类:登录成功
    • 无效等价类:登录失败,提示信息正确;登录失败,提示信息不正确

非功能 非功能测试一般是在功能测试完之后在进行的,否则即使非功能测试的结果再好但是不能满足业务的需求,那就是做无用功。

当测试服务器主机是Windows Server: 判断一下对大小写有没有限制(Windows不区分大小写) 利用Charless等代理工具测试待测软件在弱网和网络切换时的情况 密码框是否加密显示(不可复制,不能猜出位数,浏览器查看源码的情况下也是加密的) 后台系统创建的用户第一次登录成功时,是否提示修改密码;(高校给学生购买了某网课平台的在线课程一般是用学号作为账户名) 验证码的时效性(验证码有效期内,有效期外,恰好在有效期与无效期,同一用户或IP是否有每天获取验证码的次数) 刷新页面是否会刷新验证码 普通用户登录后访问了管理员有权访问的页面是否阻止访问并给出提示信息 页面内容展示后页面的默认焦点是否在用户名的输入框中,且Tab和Enter可以使用 同一用户在同一终端的多种浏览器上登录,验证登录功能的互斥性是否符合设计预期; 同一用户先后在多台终端的浏览器上登录,验证登录是否具有互斥性。

单用户登录的响应时间是否小于 3 秒;单用户登录时,后台请求数量是否过多; 高并发场景下用户登录的响应时间是否小于 5 秒;高并发场景下服务端的监控指标是否符合预期; 高集合点并发场景下,是否存在资源死锁和不合理的资源等待;长时间大量用户连续登录和登出,服务器端是否存在内存泄漏。

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

测试用例的格式

项目版本需求标识需求名称用例标识用例描述预置条件测试步骤期望结果优先级创建人创建时间维护人
xxxB2B管理平台V1.0R0001交易查询TC_DL_003查询交易订单,查询结果与查询条件一致1.当前账户中有已购买的理财产品数据,可供查询1.点击交易查询 2.选择交易状态为已委托,快速查询选项1天,点击交易查询3.查看查询结果内容1.进入交易查询页面 2.查询成功 3.筛选查询内容与筛选条件一致2022/09/01

测试用例管理与复用

excel--->数据库

总结

一个优秀的测试工程师应该是有非常广阔的知识面: 产品,开发,运维,数据分析, 安全等软件公司各个方面知识都有所涉猎的“八爪鱼” 这样才能看到软件的整体,甚至是看到软件的短时间内的未来 软件测试是一个妥协的过程,需要平衡测试的投入与产出,不可能做到穷尽测试保证软件完全没有BUG 就目前来说,如果开发用的时开源的主流技术一般不会出现明显的BUG,这也是一些公司没有测试员的原因,且行业内对高级测试员的要求是:一个懂业务懂测试的全栈。


最后,绵薄之力
感谢每一个认真阅读我文章的人,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

 这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

资料获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,关注公众号:一个心态巨好的朋友 扣 ‘1’ 即可自行领取。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Uniapp中简单弹出层的使用

图示 思路 当派工单这个输入框获取到焦点后&#xff0c;弹出弹出层选择数据。 1、定义这个输入框 <view class"cu-form-group"><view class"title"><text class"text-red">*</text>派工单号: </view><input…

考虑微网新能源经济消纳的共享储能优化配置(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

leetcode消失的数字

题目描述 数组 nums 包含从 0 到 n 的所有整数&#xff0c;但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在 O ( n ) O(n) O(n) 时间内完成吗&#xff1f; 示例 1&#xff1a; 输入&#xff1a;[3,0,1] 输出&#xff1a;2 leetcode链接&#xff1a;消失的数字 ⭕…

2023年无线蓝牙耳机排行榜,十款无线蓝牙耳机品牌推荐

蓝牙耳机作为现代生活必备的电子产品之一&#xff0c;我们在选购时的选择就显得尤为重要。随着各大科技公司对蓝牙耳机功能的不断完善&#xff0c;用户对于耳机的期望也越来越高&#xff0c;音质、性能、降噪、舒适度等方面都成为了用户选择蓝牙耳机时考虑的因素。接下来我们一…

C++ 数据结构B 树

目录 1. 常见的搜索结构 2. B树概念 3. B-树的插入分析 4. B-树的插入实现 4.1 B-树的节点设计 4.2 插入key的过程 4.4 B-树的简单验证 4.5 B-树的性能分析 4.6 B-树的删除 5. B树和B*树 5.1 B树 5.2 B*树 5.3 总结 6. B-树的应用 6.1 索引 6.2 MySQL索引简介 6…

计算机网络————运输层

文章目录 概述UDPTCP首部格式 连接管理连接建立连接释放 概述 从IP层看&#xff0c;通信双方是两个主机。 但真正进行通信的实体是在主机中的进程&#xff0c;是这个主机中的一个进程和另一个主机中的一个进程在交换数据。 所以严格的讲&#xff0c;两个主机进行通信就是两个…

关于邮件协议的理解、实验以及java mail的实现

目录 1、几种电子邮件系统组成 传统电子邮件系统 用户代理 UA (User Agent) 邮箱服务器 基于万维网的电子邮件系统 2、电子邮件协议 SMTP 连接建立 邮件传送 连接释放 局限 POP3 IMAP 补充 3、telnet实验电子邮件协议 SMTP POP3 4、java mail 参考文章 1、几…

el-carousel和el-image组合实现swiper左右滑动图片,点击某张图片放大预览的效果

<template><el-carousel class"image-swiper" :height"100%" :indicator-position"swiperItems.length < 1 ? none : ":arrow"swiperItems.length < 1 ? never : "><el-carousel-item v-for"(a, $i) in s…

websocket前端的连接与接收数据

什么是websocket 1, WebSocket是一种用于在客户端和服务器之间进行全双工通信的网络协议。它使得在单个TCP连接上可以进行双向通信&#xff0c;允许服务器主动地发送数据给客户端&#xff0c;同时客户端也可以向服务器发送数据。与传统的HTTP请求-响应模型不同&#xff0c;Web…

Scrapy框架--settings配置 (详解)

目录 settings配置 官网-参考配置 配置文档 Scrapy默认BASE设置 settings配置 Scrapy框架中的配置文件&#xff08;settings.py&#xff09;是用来管理爬虫行为和功能的关键部分。它是一个Python模块&#xff0c;提供了各种配置选项&#xff0c;可以自定义和控制爬虫的行为。…

【IMX6ULL驱动开发学习】12.Linux驱动之设备树

承接上一篇博客 【IMX6ULL驱动开发学习】11.驱动设计之面向对象_分层思想&#xff08;学习设备树过渡部分&#xff09; 代码获取&#xff1a;https://gitee.com/chenshao777/imx6-ull_-drivers 我后面将三个层合并了&#xff08;实际上只有前两层&#xff09;&#xff0c;合并…

[论文阅读] (31)李沐老师视频学习——4.研究的艺术·理由、论据和担保

《娜璋带你读论文》系列主要是督促自己阅读优秀论文及听取学术讲座&#xff0c;并分享给大家&#xff0c;希望您喜欢。由于作者的英文水平和学术能力不高&#xff0c;需要不断提升&#xff0c;所以还请大家批评指正&#xff0c;非常欢迎大家给我留言评论&#xff0c;学术路上期…