文章目录
- 1.前言
- 2.用户模块
- 2.1 登录
- 2.2 注册
- 2.3 修改个人信息
- 2.4 退出登录
- 3.短链接分组模块
- 3.1 创建短链接分组
- 3.2 修改短链接分组
- 3.3 删除短链接分组
- 4.短链接管理模块
- 4.1 创建单个短链接
- 4.2 批量创建短链接
- 4.3 修改短链接信息
- 4.4 分页查询短链接
- 4.5 短链接跳转原始链接
- 4.6 删除短链接
- 5.短链接监控模块
- 5.1 统计短链接的PV访问
- 5.2 统计短链接的UV访问
- 5.3 统计短链接的IP访问
- 5.4 统计短链接的地区访问
- 5.5 统计短链接的浏览器访问
- 5.6 统计短链接的访问设备
- 5.7 统计短链接的网络
- 5.8 统计短链接访问的操作系统
- 6.回收站模块
- 6.1 恢复短链接
- 6.2 彻底删除短链接
- 6.3 分页查询回收站短链接
1.前言
本篇文章主要是简码短链项目的功能,安全性,易用性,兼容性等方面进行测试,采用的方法有等价类划分法,边界值分析法,错误推测法等
2.用户模块
用户模块共有三个功能:
- 用户登录
- 用户注册
- 用户修改个人信息
- 退出登录
2.1 登录
登录页面这里需要输入用户名和密码.
根据等价类划分法设计测试用例如下
有效等价类:
- 有效用户名和密码
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 有效的用户名和密码 | 成功登录,并跳转到主页 |
- 无效等价类
用例编号 | 输入 | 预期结果 |
---|---|---|
2 | 空用户名,任意密码 | 成功失败,并提示"请输入正确的账号密码!" |
3 | 任意用户名,空密码 | 成功失败,并提示"请输入正确的账号密码!" |
4 | 正确的用户名,错误的密码 | 成功失败,并提示"请输入正确的账号密码!" |
5 | 错误的用户名,正确的密码 | 成功失败,并提示"请输入正确的账号密码!" |
6 | 错误的用户名和密码 | 成功失败,并提示"请输入正确的账号密码!" |
7 | 有效的用户名和密码 | 成功失败,并提示"请输入正确的账号密码!" |
2.2 注册
用户注册功能需要输入用户名,邮箱,手机号,姓名,密码,其中用户名是1~11位,姓名不是必须要输入的,密码要在8位以上,手机号和邮箱要符合正确的格式
注册功能的测试用例设计主要使用了等价类划分和边界值分析法.
设计测试用例如下:
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 所有必填项均填写正确,且输入姓名 | 成功注册,并自动登录跳转到主页 |
2 | 所有必填项均填写正确,但姓名为空 | 成功注册,并自动登录跳转到主页 |
3 | 用户名为空,其它选项填写正确 | 注册失败,并提示"请输入用户名" |
4 | 邮箱为空,其它选项填写正确 | 注册失败,并提示"请输入邮箱" |
5 | 手机号为空,其它选项填写正确 | 注册失败,并提示"请输入手机号" |
6 | 密码为空,其它选项填写正确 | 注册失败,并提示"请输入密码" |
7 | 手机号格式不正确,其它选项填写正确 | 注册失败,并提示"请输入正确的手机号" |
8 | 邮箱格式不正确,其它选项填写正确 | 注册失败,并提示"请输入正确的邮箱号" |
9 | 用户名已经存在时 | 注册失败.并提示"用户记录已存在" |
10 | 用户名长度为1,其它选项填写正确 | 成功注册,并自动登录跳转到主页 |
11 | 用户名长度为11,其它选项填写正确 | 成功注册,并自动登录跳转到主页 |
12 | 密码长度为8位,其它选项填写正确 | 成功注册,并自动登录跳转到主页 |
13 | 密码长度为15位,其它选项填写正确 | 成功注册,并自动登录跳转到主页 |
14 | 密码长度长度大于15位,其它选项填写正确 | 注册失败.并提示"密码长度为8~15位" |
2.3 修改个人信息
修改个人信息功能功能修改用户的手机号,邮箱,姓名和密码.
邮箱和手机号是必填字段,而且格式要正确
密码不会进行回显,可直接进行输入新密码进行修改
修改个人信息功能设计测试用例主要使用了等价类划分和边界值分析法
测试用例如下:
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 修改所有字段,且符合要求 | 修改成功,页面提示"修改成功" |
2 | 仅修改手机号(正确的格式) | 修改成功,页面提示"修改成功" |
3 | 仅修改邮箱(正确的格式) | 修改成功,页面提示"修改成功" |
4 | 仅修改姓名 | 修改成功,页面提示"修改成功" |
5 | 仅修改密码(8~15位) | 修改成功,页面提示"修改成功" |
6 | 手机号为空 | 修改失败,页面提示"请输入手机号" |
7 | 邮箱为空 | 修改失败,页面提示"请输入邮箱" |
8 | 手机号格式不正确 | 修改失败,页面提示"请输入正确的手机号" |
9 | 邮箱格式不正确 | 修改失败,页面提示"请输入正确的邮箱号" |
10 | 密码长度不足8位 | 修改失败,页面提示"密码长度为8~15位" |
11 | 密码长度大于15位 | 修改失败,页面提示"密码长度为8~15位" |
2.4 退出登录
退出登录功能是确保用户能够安全地结束会话的重要部分
退出登录功能设计测试用例主要使用了兼容性测试
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 用户已登录,点击退出按钮 | 退出成功,页面提示"成功退出!",并跳转到登陆页面 |
2 | 用户已登录,通过浏览器菜单退出 | 退出成功,会话信息被清除 |
3 | 不同浏览器下的退出操作 | 退出成功,页面提示"成功退出!",并跳转到登陆页面 |
4 | 不同设备下的退出操作 | 退出成功,页面提示"成功退出!",并跳转到登陆页面 |
3.短链接分组模块
短链接分组的功能有三个:
- 创建短链接分组
- 修改短链接分组
- 删除短链接分组
3.1 创建短链接分组
创建短链接分组功能是为了帮助用户更好地管理和组织他们的短链接。
由于这里的分组名称并没有什么限制条件,所以测试用例写起来也比较简单
测试用例如下:
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 输入分组名称为"测试" | 添加成功,在分组列表中显示"测试"短链接分组 |
2 | 输入的分组名称包含HTML标签 | 系统应该能够防止XSS攻击,不对输入的HTML标签进行解析或执行 |
3 | 输入分组名称为 ’ OR ‘1’='1 | SQL注入失败 |
4 | 使用不同的浏览器(如Chrome、Firefox、Safari、Edge等)创建短链接分组 | 添加成功,在分组列表中显示"测试"短链接分组 |
5 | 使用不同的设备(如PC、手机、平板等)创建短链接分组 | 添加成功,在分组列表中显示"测试"短链接分组 |
3.2 修改短链接分组
修改短链接分组功能允许用户更改已创建的分组名称。
测试用例如下:
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 输入分组名称为"测试" | 编辑成功,在分组列表中显示"测试"短链接分组 |
2 | 输入的分组名称包含HTML标签 | 系统应该能够防止XSS攻击,不对输入的HTML标签进行解析或执行 |
3 | 输入分组名称为 ’ OR ‘1’='1 | SQL注入失败 |
4 | 使用不同的浏览器(如Chrome、Firefox、Safari、Edge等)创建短链接分组 | 添加成功,在分组列表中显示"测试"短链接分组 |
5 | 使用不同的设备(如PC、手机、平板等)创建短链接分组 | 编辑成功,在分组列表中显示"测试"短链接分组 |
3.3 删除短链接分组
删除短链接分组功能是为了允许用户移除不再需要的分组。
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 删除空分组 | 短链接分组在分组列表中删除成功 |
2 | 删除包含短链接的分组 | 短链接分组在分组列表中删除成功,短链接也一并删除 |
3 | 删除多个分组 | 短链接分组均可以删除成功 |
4 | 使用不同的浏览器(如Chrome、Firefox、Safari、Edge等) | 短链接分组在分组列表中删除成功 |
5 | 使用不同的设备(如PC、手机、平板等) | 短链接分组在分组列表中删除成功 |
4.短链接管理模块
短链接管理模块的功能有:
- 创建短链接
- 批量创建短链接
- 修改短链接
- 删除短链接
4.1 创建单个短链接
创建单个短链接功能是短链接管理模块中的核心功能之一。创建短链接分组时,短链接分组默认是默认分组,有效期为永久.
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 输入原始链接 | 创建短链接成功,在列表中可以进行显示 |
2 | 跳转链接为空 | 创建短链接失败,页面提示"请输入"请输入链接" |
3 | 描述信息为空 | 创建短链接失败,页面提示"请输入描述信息" |
4 | 选择其它短链接分组 | 创建短链接成功,在对应的短链接分组中可以进行显示 |
5 | 选择短链接有效期为永久 | 创建永久短链接成功 |
6 | 选择短链接有效期为自定义 | 创建短链接成功,可以点击短链接旁的图标查看到期时间 |
7 | 原始接格式不对 | 创建短链接失败,页面提示"请输入 http:// 或 https:// 开头的链接或应用跳转链接" |
8 | 使用不同的浏览器(如Chrome、Firefox、Safari、Edge等)创建短链接 | 短链接创建成功 |
9 | 使用不同的设备(如PC、手机、平板等)创建短链接 | 短链接创建成功 |
4.2 批量创建短链接
批量创建短链接功能是为了方便用户一次性创建多个短链接。
测试用例如下:
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 输入100个以内原始链接 | 创建短链接成功,在列表中可以进行显示 |
2 | 跳转链接为空 | 创建短链接失败,页面提示"请输入"请输入链接" |
3 | 描述信息为空 | 创建短链接失败,页面提示"请输入描述信息" |
4 | 选择其它短链接分组 | 创建短链接成功,在对应的短链接分组中可以进行显示 |
5 | 选择短链接有效期为永久 | 创建永久短链接成功 |
6 | 选择短链接有效期为自定义 | 创建短链接成功,可以点击短链接旁的图标查看到期时间 |
7 | 原始接格式不对 | 创建短链接失败,页面提示"请输入 http:// 或 https:// 开头的链接或应用跳转链接" |
8 | 使用不同的浏览器(如Chrome、Firefox、Safari、Edge等)创建短链接 | 短链接创建成功 |
9 | 使用不同的设备(如PC、手机、平板等)创建短链接 | 短链接创建成功 |
10 | 输入100个以上原始链接 | 创建短链接失败 |
11 | 输入原始链接和描述信息行数不一致 | 创建短链接失败 |
4.3 修改短链接信息
修改短链接信息功能是为了允许用户更新已创建的短链接的原始链接或自定义短链接。
测试用例如下:
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 修改原始链接 | 修改短链接成功,在列表中可以进行显示 |
2 | 跳转链接为空 | 修改短链接失败,页面提示"请输入"请输入链接" |
3 | 描述信息为空 | 修改短链接失败,页面提示"请输入描述信息" |
4 | 选择其它短链接分组 | 修改短链接成功,在对应的短链接分组中可以进行显示 |
5 | 选择短链接有效期为永久 | 修改永久短链接成功 |
6 | 选择短链接有效期为自定义 | 修改短链接成功,可以点击短链接旁的图标查看到期时间 |
7 | 原始接格式不对 | 修改短链接失败,页面提示"请输入 http:// 或 https:// 开头的链接或应用跳转链接" |
8 | 使用不同的浏览器(如Chrome、Firefox、Safari、Edge等)修改短链接 | 短链接修改成功 |
9 | 使用不同的设备(如PC、手机、平板等)修改短链接 | 短链接修改成功 |
4.4 分页查询短链接
短链接默认展示15条,可以选择每页展示10,15,20,30条
测试用例如下:
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 默认展示15条记录 | 页面展示15条短链接,总页数显示正确 |
2 | 默认展示10条记录 | 页面展示10条短链接,总页数显示正确 |
3 | 默认展示20条记录 | 页面展示20条短链接,总页数显示正确 |
4 | 默认展示30条记录 | 页面展示30条短链接,总页数显示正确 |
5 | 选择上一页 | 当页数为1时,无法点击 |
6 | 选择下一页 | 当页数为1时,无法点击 |
7 | 输入前往的页数大于总页数 | 页面跳转到最后一页 |
8 | 输入前往的页数小于总页数 | 页面跳转到第一页 |
9 | 输入前往的页数不是数字 | 页面跳转到第一页 |
4.5 短链接跳转原始链接
短链接跳转原始链接功能是短链接管理模块的核心功能之一,确保用户通过短链接能够正确跳转到对应的原始链接。
用例编号 | 标题 | 预期结果 |
---|---|---|
1 | 短链接未过期 | 短链接能正常挑战到原始链接 |
2 | 短链接过期 | 短链接能挑战404页面 |
3 | 短链接格式不正确 | 短链接能挑战404页面 |
4 | 短链接被删除 | 短链接能挑战404页面 |
5 | 高并发访问短链接 | 系统性能稳定,响应时间合理 |
6 | 使用不同的浏览器(如Chrome、Firefox、Safari、Edge等)跳转 | 短链接能正常挑战到原始链接 |
7 | 使用不同的设备(如PC、手机、平板等)跳转 | 短链接能正常挑战到原始链接 |
4.6 删除短链接
删除短链接功能是为了允许用户从系统中删除不再需要的短链接。
测试用例:
用例编号 | 标题 | 操作 | 预期结果 |
---|---|---|---|
1 | 删除单个短链接 | 在短链接列表中选择短链接,点击“删除”按钮并确定 | 短链接被移动到回收站,短链接列表中不再显示该短链接,回收站中显示该短链接 |
2 | 删除多个短链接 | 在短链接列表中选择短链接,点击“删除”按钮并确定 | 短链接被移动到回收站,短链接列表中不再显示该短链接,回收站中显示该短链接 |
3 | 删除最后一个短链接 | 短链接分组中只有一个短链接 | 短链接被移动到回收站,短链接列表中不再显示任何短链接,回收站中显示该短链接 |
4 | 删除短链接前的确认提示 | 点击“删除”按钮 | 显示确认对话框,“是否移入回收站”,用户确认后,短链接被移动到回收站 |
5 | 删除短链接后的反馈信息 | 用户删除完短链接之后 | 页面提示"删除成功" ,短链接被移动到回收站 |
5.短链接监控模块
短链接监控模块用于实时监控短链接的使用情况,包括点击次数、访问来源、访问时间等数据。
5.1 统计短链接的PV访问
统计短链接的PV(Page View,页面浏览量)访问功能是为了记录和分析短链接的访问次数。
用例编号 | 标题 | 步骤 | 预期结果 |
---|---|---|---|
1 | 记录单次访问 | 输入短链接进行访问 | PV访问次数增加1次 |
2 | 记录多次访问 | 输入短链接进行访问 | 每次访问PV访问次数增加1次 |
3 | 记录不同时间段的访问 | 输入短链接进行访问,在不同的时间段(如上午、下午、晚上)访问短链接 | PV访问次数增加1次,访问记录包含访问时间 |
5.2 统计短链接的UV访问
统计短链接的UV(Unique Visitor,独立访客)访问功能是为了记录和分析短链接被访问时的独立访客数。
用例编号 | 标题 | 步骤 | 预期结果 |
---|---|---|---|
1 | 记录单个独立访客访问 | 一个独立访客访问短链接 | 统计模块记录一次UV访问 |
2 | 记录多个独立访客访问 | 多个独立访客访问短链接 | 统计模块记录多次UV访问 |
3 | 记录同一访客多次访问 | 一个独立访客在同一会话内多次访问短链接 | 统计模块记录为旧访客 |
4 | 记录不同时间段的独立访客访问 | 两个独立访客在不同时间段(如上午和下午)访问短链接 | 统计模块记录两次UV访问 |
5.3 统计短链接的IP访问
统计短链接的IP访问功能是为了记录和分析短链接被访问时所使用的IP地址。
用例编号 | 标题 | 步骤 | 预期结果 |
---|---|---|---|
1 | 记录单个IP访问 | 一个IP地址访问短链接 | 统计模块记录一次IP访问 |
2 | 记录多个IP访问 | 多个独立访客访问短链接 | 统计模块记录多次IP访问 |
3 | 记录同一IP多次访问 | 一个IP在同一会话内多次访问短链接 | 每次访问记录一次该IP地址的访问 |
4 | 记录不同时间段的IP访问 | 两个IP在不同时间段(如上午和下午)访问短链接 | 记录两次不同IP地址的访问 |
5.4 统计短链接的地区访问
统计短链接的地区访问功能是为了记录和分析短链接被访问时所处的地理位置。
用例编号 | 标题 | 操作 | 预期结果 |
---|---|---|---|
1 | 记录不同省份的访问 | 从中国不同省份(如北京、上海、广东、江苏)访问短链接 | 统计模块记录各省份的访问次数 |
2 | 记录同一省份多次访问 | 从同一省份(如北京)多次访问短链接 | 每次访问记录一次该省份的访问 |
3 | 不记录国际地区的访问 | 从不同国家(如美国、日本、德国)访问短链接 | 统计模块不记录这些国家的访问 |
4 | 记录未知地区的访问 | 使用未知或无法识别的IP地址访问短链接 | 统计模块记录这些未知地区的访问为未知 |
5 | 地区访问数据的实时更新 | 从中国不同省份访问短链接,查看地区访问统计数据 | 地区访问统计数据实时更新,显示最新的访问记录,仅显示中国省份的访问数据 |
5.5 统计短链接的浏览器访问
统计短链接的浏览器访问功能是为了记录和分析短链接被访问时所使用的浏览器类型。
用例编号 | 标题 | 操作 | 预期结果 |
---|---|---|---|
1 | 记录Chrome浏览器访问 | 使用Chrome浏览器访问短链接 | 统计模块记录一次Chrome浏览器访问 |
2 | 记录Firefox浏览器访问 | 使用Firefox浏览器访问短链接 | 统计模块记录一次Firefox浏览器访问 |
3 | 记录Safari浏览器访问 | 使用Safari浏览器访问短链接 | 统计模块记录一次Safari浏览器访问 |
4 | 记录Edge浏览器访问 | 使用Edge浏览器访问短链接 | 统计模块记录一次Edge浏览器访问 |
5 | 记录多种浏览器访问 | 从Chrome、Firefox、Safari和Edge浏览器分别访问短链接 | 记录每一次Chrome、Firefox、Safari和Edge浏览器的访问 |
6 | 记录同一浏览器多次访问 | 从同一浏览器(如Chrome)多次访问短链接 | 每次访问记录一次该浏览器的访问 |
7 | 浏览器访问数据的实时更新 | 从不同浏览器访问短链接,查看浏览器访问统计数据 | 浏览器访问统计数据实时更新,显示最新的访问记录 |
5.6 统计短链接的访问设备
统计短链接的访问设备功能是为了记录和分析短链接被访问时所使用的设备类型,如PC、手机、平板等。
用例编号 | 标题 | 操作 | 预期结果 |
---|---|---|---|
1 | 记录PC设备访问 | 使用PC浏览器访问短链接 | 统计模块记录一次PC设备访问 |
2 | 记录手机设备访问 | 使用手机浏览器访问短链接 | 统计模块记录一次手机设备访问 |
3 | 记录平板设备访问 | 使用平板浏览器访问短链接 | 统计模块记录一次平板设备访问 |
4 | 记录同一设备多次访问 | 从同一设备(如手机)多次访问短链接 | 每次访问记录一次该设备的访问 |
5 | 设备访问数据的实时更新 | 从不同设备访问短链接,查看设备访问统计数据 | 设备访问统计数据实时更新,显示最新的访问记录 |
5.7 统计短链接的网络
统计短链接的访问网络功能是为了记录和分析短链接被访问时所使用的网络类型,如移动网络(3G/4G/5G)、Wi-Fi等。
测试用例如下:
用例编号 | 标题 | 操作 | 预期结果 |
---|---|---|---|
1 | 记录Wi-Fi网络访问 | 使用Wi-Fi连接访问短链接 | 统计模块记录一次Wi-Fi网络访问 |
2 | 记录移动网络访问 | 使用移动网络连接访问短链接 | 统计模块记录一次移动网络访问 |
3 | 记录多种网络类型访问 | 使用Wi-Fi和移动网络连接分别访问短链接 | 统计模块记录每次网络访问 |
4 | 记录同一网络多次访问 | 从同一网络(如Wi-Fi)多次访问短链接 | 统计模块记录每一次网络访问 |
5 | 网络访问数据的实时更新 | 从不同网络访问短链接,查看网络访问统计数据 | 网络访问统计数据实时更新,显示最新的访问记录 |
5.8 统计短链接访问的操作系统
在短链接项目中,统计访问短链接的操作系统可以为用户和开发者提供有价值的信息。
用例编号 | 标题 | 操作 | 预期结果 |
---|---|---|---|
1 | 记录Windows操作系统访问 | 使用Windows操作系统访问短链接 | 记录一次Windows操作系统的访问 |
2 | 记录macOS操作系统访问 | 使用macOS操作系统访问短链接 | 记录一次macOS操作系统的访问 |
3 | 记录Linux操作系统访问 | 使用Linux操作系统访问短链接 | 记录一次Linux操作系统的访问 |
4 | 记录同一操作系统多次访问 | 从同一操作系统(如Windows 10)多次访问短链接 | 每次访问记录一次该操作系统的访问 |
5 | 记录多种操作系统访问 | 从Windows、macOS、Linux、Android和iOS操作系统分别访问短链接 | 统计模块分别记录各操作系统的访问 |
6.回收站模块
短链接回收站模块允许用户将已删除的短链接暂时存放在回收站中,以便后续恢复或彻底删除。
6.1 恢复短链接
恢复短链接功能是为了允许用户将已删除的短链接从回收站中恢复到正常使用状态。
测试用例:
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 恢复单个短链接 | 短链接从回收站中移除,并恢复到对应的短链接分组中 |
2 | 恢复多个短链接 | 短链接从回收站中移除,并恢复到对应的短链接分组中 |
3 | 当用户将鼠标悬停恢复图标 | 页面出现提示信息"恢复" |
4 | 恢复已经过期的短链接 | 短链接从回收站中移除,并恢复到对应的短链接分组中,且依旧是过期状态 |
5 | 恢复期限为自定义的短链接 | 短链接从回收站中移除,并恢复到对应的短链接分组中,且期限依旧是自定义时间 |
6 | 恢复期限永久的短链接 | 短链接从回收站中移除,并恢复到对应的短链接分组中,且期限依旧是永久 |
6.2 彻底删除短链接
彻底删除短链接功能是为了允许用户永久删除回收站中的短链接,确保这些短链接不能再被恢复。
测试用例:
用例编号 | 输入 | 预期结果 |
---|---|---|
1 | 删除单个短链接 | 短链接从回收站中移除,尝试访问该短链接时,跳转到404页面 |
2 | 删除单个短链接 | 短链接从回收站中移除,尝试访问该短链接时,跳转到404页面 |
3 | 点击删除按钮删除短链接 | 页面提示"删除后短链跳转会失效,同时停止数据统计,这是一个不可逆的操作,是否删除?" |
4 | 点击删除按钮,确认删除短链接 | 页面提示"删除成功" |
6.3 分页查询回收站短链接
分页查询回收站短链接功能是为了让用户能够高效地管理和查看回收站中的短链接列表。
测试用例如下:
用例编号 | 步骤 | 预期结果 |
---|---|---|
1 | 默认展示15条记录 | 页面展示15条短链接,总页数显示正确 |
2 | 选择展示10条记录 | 页面展示10条短链接,总页数显示正确 |
3 | 选择展示20条记录 | 页面展示20条短链接,总页数显示正确 |
4 | 选择展示30条记录 | 页面展示30条短链接,总页数显示正确 |
5 | 选择上一页 | 当页数为1时,无法点击 |
6 | 选择下一页 | 当页数为1时,无法点击 |
7 | 输入前往的页数大于总页数 | 页面跳转到最后一页 |
8 | 输入前往的页数小于总页数 | 页面跳转到第一页 |
9 | 输入前往的页数不是数字 | 页面跳转到第一页 |