通常情况下还应该进行测试用例外部评审。将已完成的基于百度关键字搜索业务的功能和安全测试用例集的存放位置告知项目团队成员,需要预留出一定的时间,便于项目组研发、产品人员阅读,以免在项目团队测试用例评审会议上占用过多时间熟悉相关测试用例内容。在项目团队测试用例评审会议上,相关人员积极进行测试用例评审,提出如下几点意见。

1)    针对测试用例TC008、TC019和TC023,产品人员对搜索输入框的字符进行了明确,即无论是中文字符还是英文字符,最大输入的字符数就是100个,无论是中文字符、英文字符或者中英文字符混合,都需要前后端做校验,若前端输入超过100个字符,则自动截取前100个字符。

2)    针对测试用例TC016,产品人员对需求进行了明确,即将SQL注入的语句进行过滤处理,将其作为普通文本处理,同时后端研发人员也明确users表存在。

3)    针对测试用例TC023,产品人员对需求进行了明确,即搜索结果数没有限制。

限于篇幅,笔者只罗列几点评审意见,测试团队针对产品人员和研发人员提出的评审意见进行了相关测试用例的问题修正,形成新的基于百度关键字搜索业务的功能和安全测试用例集,如表3-2所示。

3-2 新的基于百度关键字搜索业务的功能和安全测试用例集

测试编号

测试目标

前置条件

测试步骤

预期结果

TC001

搜索输入框合法关键字的测试

用户打开百度搜索页面

1. 在搜索输入框中输入一个有效关键字(例如:"测试")

2. 点击搜索按钮

显示搜索结果页面。

TC002

搜索输入框多个合法关键字的测试

用户打开百度搜索页面

1. 在搜索输入框中输入多个有效关键字(例如:"软件测试 方法")

2. 点击搜索按钮

显示搜索结果页面。

TC003

搜索输入框包含特殊字符的测试

用户打开百度搜索页面

1. 在搜索输入框中输入特殊字符(例如:"#$%^")

2. 点击搜索按钮

显示错误消息提示。

TC004

基本关键字搜索 - 无相关结果

用户已进入百度搜索页面

1. 在搜索框中输入一个关键字,但系统无法找到相关结果(例如:"未知关键字")。

2. 点击搜索按钮。

显示相应的通知给用户(例如:"未找到相关结果")。

TC005

基本关键字搜索 - 取消搜索

用户已进入百度搜索页面

1.在搜索框中输入一个有效关键字(例如:"测试")。

2. 在搜索操作执行前取消搜索操作。

搜索操作被取消,用例结束。

TC006

基本关键字搜索 - 多次搜索

用户已进入百度搜索页面

1.在搜索框中输入一个有效关键字(例如:"测试")。

2. 点击搜索按钮。

3. 重复步骤1和2多次。

搜索结果正确显示,搜索历史被保留。

TC007

基本关键字搜索 - 边界值测试

用户已进入百度搜索页面

1.在搜索框中输入一个极小的关键字(例如:"a")。

2. 点击搜索按钮。

显示与关键字相关的搜索结果页面。

TC008

基本关键字搜索 - 边界值测试

用户已进入百度搜索页面

1.在搜索框中输入一个极长的关键字(超出限制字符数,例如:"a" * 101)。

2. 点击搜索按钮。

1.搜索框自动截取前100个字符。2.显示前100个字符的搜索结果页面。

TC009

搜索建议显示测试

用户打开百度搜索页面

在搜索输入框中输入部分关键字(例如: "测")

显示搜索建议列表。

TC010

搜索建议多个部分关键字的测试

用户打开百度搜索页面

在搜索输入框中输入多个部分关键字(例如: "软件测")

显示搜索建议列表。

TC011

针对搜索结果的验证

用户输入合法关键字并点击搜索按钮

检查搜索结果页面

显示相关的搜索结果。

TC012

下一页按钮测试

用户输入合法关键字并点击搜索按钮

点击下一页按钮

显示下一页的搜索结果。

TC013

上一页按钮测试

用户输入合法关键字并点击搜索按钮

点击上一页按钮

显示上一页的搜索结果。

TC014

按相关性排序测试

用户输入合法关键字并点击搜索按钮

选择按相关性排序

结果按相关性排序。

TC015

按时间排序测试

用户输入合法关键字并点击搜索按钮

选择按时间排序

结果按时间排序。

TC016

SQL注入攻击测试

用户在搜索输入框中输入恶意SQL查询(例如: "'; DROP TABLE Users --")

检查搜索结果或页面行为

过滤并显示普通文本。

TC017

XSS攻击测试

用户在搜索输入框中输入包含XSS脚本的关键字(例如: "<script>alert('XSS Attack')</script>")

检查搜索结果或页面行为

过滤并显示普通文本。

TC018

搜索输入框的最小边界值测试

用户打开百度搜索页面

在搜索输入框中输入一个空格

显示搜索建议或搜索历史。

TC019

搜索输入框的最大边界值测试

用户打开百度搜索页面

在搜索输入框中输入一个长字符串,超出限制字符数(例如:101个字符、汉字或两者混合字符串)

显示前100个字符的搜索结果页面。

TC020

搜索建议的最小边界值测试

用户打开百度搜索页面

在搜索输入框中输入一个字符(例如:"a")

显示搜索建议列表。

TC021

搜索建议的最大边界值测试

用户打开百度搜索页面

在搜索输入框中输入多个字符,但不足以显示搜索建议(例如:"abcde")

不显示搜索建议列表。

TC022

搜索结果的最小边界值测试

用户输入合法关键字并点击搜索按钮

检查搜索结果页面

显示相关的搜索结果。

TC023

搜索结果的最大边界值测试

用户输入合法关键字并点击搜索按钮

输入关键字,使得搜索结果数超过限制(例如:超过1000个结果)

显示搜索结果页面。

测试用例的评审和改进是一个持续的过程,随着项目的发展、需求变更和新功能的加入,测试用例必须不断地进行更新和优化。这不仅要求测试团队具有高度的敏捷性和适应性,还需要他们对业务和技术有深入的理解。

ChatGPT生成测试用例的最佳实践(四)的更多相关文章

  1. nodejs 实践:express 最佳实践(四) express-session 解析

    nodejs 实践:express 最佳实践(四) express-session 解析 nodejs 发展很快,从 npm 上面的包托管数量就可以看出来.不过从另一方面来看,也是反映了 nodejs ...

  2. Xcode 自己主动生成版本技术最佳实践

    在 bloglovin ,我们使用自己主动生成版本来设置Xcode,使当前的版本为在Git活跃的分支上 的提交数. 它一直正常工作着.但我们的技术也不是一帆风顺的. 糟糕的老方法 我们使用的技术是来自 ...

  3. nodejs 实践:express 最佳实践系列

    nodejs 实践:express 最佳实践系列 nodejs 实践:express 最佳实践(一) 项目结构 nodejs 实践:express 最佳实践(二) 中间件 nodejs 实践:expr ...

  4. <读书笔记>《Web前端开发最佳实践》

    P77 P89 CSS Reset P94 给CSS样式定义排序    排序工具:CSScomb P97 什么是CSS的权重?权重是指选择符的优先级 P100 工具:Sass Less P101 框架 ...

  5. WebSocket原理与实践(四)--生成数据帧

    WebSocket原理与实践(四)--生成数据帧 从服务器发往客户端的数据也是同样的数据帧,但是从服务器发送到客户端的数据帧不需要掩码的.我们自己需要去生成数据帧,解析数据帧的时候我们需要分片. 消息 ...

  6. Windows DHCP最佳实践(四)

    这是Windows DHCP最佳实践和技巧的最终指南. 如果您有任何最佳做法或技巧,请在下面的评论中发布它们. 在本指南(四)中,我将分享以下DHCP最佳实践和技巧. 使用DHCP中继代理 防止恶意D ...

  7. JavaScript基础笔记(十四)最佳实践

    最佳实践 一)松散耦合 1.解耦HTML/JavaScript: 1)避免html种使用js 2)避免js种创建html 2.解耦CSS/JS 操作类 3.解耦应用逻辑和事件处理 以下是要牢记的应用和 ...

  8. Spring Batch在大型企业中的最佳实践

    在大型企业中,由于业务复杂.数据量大.数据格式不同.数据交互格式繁杂,并非所有的操作都能通过交互界面进行处理.而有一些操作需要定期读取大批量的数据,然后进行一系列的后续处理.这样的过程就是" ...

  9. Canvas 最佳实践(性能篇)

    Canvas 想必前端同学们都不陌生,它是 HTML5 新增的「画布」元素,允许我们使用 JavaScript 来绘制图形.目前,所有的主流浏览器都支持 Canvas. Canvas 最常见的用途是渲 ...

  10. 《开源安全运维平台OSSIM最佳实践》

    <开源安全运维平台OSSIM最佳实践> 经多年潜心研究开源技术,历时三年创作的<开源安全运维平台OSSIM最佳实践>一书即将出版.该书用80多万字记录了,作者10多年的IT行业 ...

随机推荐

  1. [OI] 交互 | pipe

    关于如何在本地实现交互 管道 Linux 内置了一种管道操作,可以方便地把 \(A\) 程序的输出和 \(B\) 程序的输入连接起来,只需要以下指令: A | B 此代码行的意思是:同时运行 \(A\ ...

  2. laravel中添加公共函数

    laravel中添加公共函数 1. 在项目中的新建app/Helper/functions.php文件 2.在项目的跟目录找到composer.json 文件,并打开,然后再autoload中添加如下 ...

  3. MobileNet V2中InvertedResidual实现

    1.为了方便理解其本身结构,找到源码理解一下. 2.论文地址:http://arxiv.org/pdf/1801.04381.pdf 3.V2相比较V1增加了倒残差结构和线性瓶颈层.整个结构按照维度来 ...

  4. PostgreSQL 15新版本特性解读(含直播问答、PPT资料汇总)

    2022年6月23日,墨天轮技术社区联合PostgreSQL中文社区共同举办[PostgreSQL 15 新特性解读]直播活动. 小编在这里整理了直播间的代表性问题,请老师为大家解答.并在文末附上视频 ...

  5. OpenAI官方开源多智能体框架「Swarm」,并不是我想要的多智能体框架

    今天早上,OpenAI实施团队的 @shyamal在Github上开源了Swarm这个OpenAI官方的多智能体框架.不得不说,OpenAI官方下场,获得的社区影响就是不一样,在微信群.朋友圈里已经出 ...

  6. 「模拟赛」多校 A 层联训 5

    A.好数(number) 很签,打完之后"不是这题我能做一个小时??" 对于每个数,都把它与前面的所有数的加和求一遍存进桶里,再遇到一个新数 \(a_i\) 时,枚举前面的所有 \ ...

  7. OpenFunction 0.7.0 发布: OpenFunction Gateway、多语言及 Helm 安装支持

    OpenFunction 是一个开源的云原生 FaaS(Function as a Service,函数即服务)平台,旨在帮助开发者专注于业务逻辑的研发.在过去的几个月里,OpenFunction 社 ...

  8. JavaScript网页设计案例

    1.引言 在前端开发中,JavaScript 无疑是一个非常重要的语言.它不仅可以用于表单验证.动态内容更新,还能实现复杂的交互效果和动画.通过 JavaScript,网页变得更加生动和富有互动性.本 ...

  9. 手把手教会你使用Markdown【从入门到精通一篇就够了】

    目录 一.Markdown是什么 二.Markdown优点 三.Markdown的基本语法 3.1 标题 3.2 字体 3.3 换行 3.4 引用 3.5 链接 3.6 图片 3.7 列表 3.8 分 ...

  10. 工作中的技术总结_ form表单的前后台交互 _20210825

    工作中的技术总结_ form表单的前后台交互 _20210825 在项目经常会使用 form 表单 进行数据的 页面展示 以及数据的 提交和后台处理 1.数据是怎么从后台传递到前台的 model.ad ...