请输入
菜单

测试用例

一、背景

一直以来,新平台问题频繁暴露,通过对问题进行分析,大部分问题源于开发人员粗心大意、考虑不周;

测试是功能上线的最后一道关卡,测试用例是测试工作的关键所在,我们应对测试用例的设计和编制进行规范。

二、测试用例要求

1、功能清单

功能清单介绍此测试用例涉及那些功能模块,以及测试用例覆盖的功能点

功能清单包含:一级模块、二级模块、功能

2、测试用例

测试用例需要根据《需求文档》、《技术分析方案》、《项目原型》进行设计编写

做到尽可能的覆盖所有需求点几用户操作场景。

测试用例包含:

用例编号、一级模块、二级模块、功能、测试点、优先级、前置条件、测试步骤、预期结果、实际结果、

是否通过、测试时间、用例状态、备注等信息

3、用例规范

(1)一级模块

是测试用例所测的初级模块,可以是测试用例所属的大类,被测需求,被测的模块,或者是被测的单元

(2)二级模块

二级模块与一级模块同理,是测试用例所属二级模块,是一级模块下的子模块

(3)功能

功能是指测试用例所测试的功能点

(4)测试点

测试点是对测试用例的简单描述。用概括的语言描述该测试用例的测试点

(5)优先级

:保证系统基本功能、重要特性、实际使用频率比较高的用例

:更全面的验证功能的各方面,包括流程中各节点出错情况、异常情况测试、中断、UI展示、用户体验等方面的测试

:实际使用频率不高,对系统业务功能影响不大的模块或功能的测试用例

(6)前置条件

前置条件是测试用例的基础,就像大厦的地基,是不可缺少的,是测试用例发挥作用的前提,

前置条件描述所有的系统状态的必须为真的条件,这些条件使后续的触发器有效地导致测试用例的开始

(7)测试步骤

测试步骤是执行当前测试用例所要经过的操作步骤,需要给出每一步操作的详细描述

(8)预期结果

测试用例的预期结果是根据《需求文档》、《项目原型》所给的数值判定的,

而测试用例根据文案中数值进行设计场景,在这种场景下必须能够正常运行并且达到程序所设计的执行结果。

判定执行结果是否等于测试用例中的预期结果

(9)实际结果

将实际结果与预期结果进行对比,如果实际结果与预期结果一致,则该条测试用例通过

4、测试方法

要提高功能的逻辑性验证,可以采用以下测试方法和编写测试用例:

(1)边界值测试

对输入的边界情况进行测试,包括最大值、最小值以及临界值。

例如,如果一个函数接收一个整数作为参数,在编写测试用例时,可以测试最小整数值、最大整数值和零值等边界情况。

(2)异常情况测试

对异常情况的处理能力,包括参数为空、参数类型不正确、数据不符合要求等错误情况。

例如,一个函数要求输入一个非空字符串,可以编写一个测试用例,将参数设置为空字符串,以测试函数对此情况的处理。

(3)正常情况测试

在正常情况下的逻辑正确性。以覆盖各种可能的输入和操作情况为基础,编写测试用例。

例如,一个计算函数可以测试多组输入参数,包括正整数、负整数、零和浮点数等。

(4)边界条件测试

对于函数的各种条件、分支、循环等部分,测试其中的边界情况。

例如,如果函数使用一个循环来处理数组,可以编写测试用例测试边界情况

例如空数组、只有一个元素的数组和包含大量元素的数组等。

(5)状态转换测试

测试函数中不同状态之间的转换。

例如,一个状态机函数可以测试状态转换的正确性,包括从一种状态转换到另一种状态的条件和操作。

三、测试点覆盖内容

测试用例覆盖的内容、覆盖的场景,是我们设计测试用例中的最重要部分,关系到用例的完整性。

设计测试用例首先必须以需求为主,一切都是从用户需求出发,根据用户需求进行设计编写。

那么根据需求后我们需要入户进行有效的测试呢?

1、输入框

(1)字符型输入框

字符型输入框:英文全角、英文半角、数字、空或者空格、特殊字符“~!@#¥%……&*?[]{}”

特别要注意单引号和&符号。禁止直接输入特殊字符时,使用“粘贴、拷贝”功能尝试输入。

长度检查:最小长度、最大长度、最小长度-1、最大长度+1、输入超工字符比如把整个文章拷贝过去。

空格检查:输入的字符间有空格、字符前有空格、字符后有空格、字符前后有空格

多行文本框输入:允许回车换行、保存后再显示能够保存输入的格式、仅输入回车换行,

检查能否正确保存(若能,检查保存结果,若不能,查看是否有正常提示)

安全性检查:输入特殊字符串(null,NULL, ,javascript,<script>,

</script>,<title>,<html>,<td>)、输入脚本函数(<script>alert

("abc")</script>)、doucment.write("abc")、<b>hello</b>)

(2)数值型输入框

边界值:最大值、最小值、最大值+1、最小值-1

位数:最小位数、最大位数、最小位数-1最大位数+1、输入超长值、输入整数

异常值、特殊字符:输入空白(NULL)、空格或"~!@#$%^&*()_+{}|[]\:"<>?;',./?;:'-=等可能导致系统错误的字符、

禁止直接输入特殊字符时,尝试使用粘贴拷贝查看是否能正常提交、word中的特殊功能,

通过剪贴板拷贝到输入框,分页符,分节符类似公式的上下标等、数值的特殊符号如∑,㏒,㏑,∏,+,-等、

输入负整数、负小数、分数、输入字母或汉字、小数(小数前0点舍去的情况,多个小数点的情况)、

首位为0的数字如01、02、科学计数法是否支持1.0E2、全角数字与半角数字、数字与字母混合、16进制,8进制数值、货币

型输入(允许小数点后面几位)、

安全性检查:不能直接输入就copy

(3)日期型输入框

合法性检查:(输入0日、1日、32日)、月输入[1、3、5、7、8、10、12]、日输入[31]、月输入[4、6、9、11]、

日输入[30][31]、输入非闰年,月输入[2],日期输入[28、29]、输入闰年,月输入[2]、日期输入[29、30]、

月输入[0、1、12、13]

异常值、特殊字符:输入空白或NULL、输入~!@#¥%……&*(){}[]等可能导致系统错误的字符

安全性检查:不能直接输入,就copy,是否数据检验出错?

2、信息重复

在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错

重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理。

3、搜索功能

若查询条件为输入框,则参考输入框对应类型的测试方法

(1)功能实现

如果支持模糊查询,搜索名称中任意一个字符是否能搜索到

比较长的名称是否能查到

输入系统中不存在的与之匹配的条件

用户进行查询操作时,一般情况是不进行查询条件的清空,除非需求特殊说明。

(2)组合测试

不同查询条件之间来回选择,是否出现页面错误(单选框和多选框最容易出错)

测试多个查询条件时,要注意查询条件的组合测试,可能不同组合的测试会报错。

4、添加、修改功能

(1)特殊键

是否支持Tab键、是否支持回车键

(2)提示信息

不符合要求的地方是否有错误提示

(3)唯一性

字段唯一的,是否可以重复添加,添加后是否能修改为已存在的字段

字段包括区分大小写以及在输入的内容前后输入空格,

保存后,数据是否真的插入到数据库中,注意保存后数据的正确性

5、数据正确性

(1)对编辑页的每个编辑项进行修改,点击保存,是否可以保存成功,检查想关联的数据是否得到更新。

(2)进行必填项检查(即是否给出提示以及提示后是否依然把数据存到数据库中;是否提示后出现页码错乱等)

(3)是否能够连续添加(针对特殊情况)

(4)编辑时,注意编辑项的长度限制,有时在添加的时候有,在编辑的时候却没有(注意要添加和修改规则是否一致)

(5)对于有图片上传功能的编辑框,若不上传图片,查看编辑页时是否显示默认图片,若上传图片,查看是否显示图片

(6)修改后增加数据后,特别要注意查询页面的数据是否及时更新,特别是在首页时要注意数据的更新。

(7)提交数据时,连续多次点击,查看系统会不会连续增加几条相同的数据或报错。

(8)若结果列表中没有记录或者没选择某条记录,点击修改按钮,系统会抛异常。

6、删除功能

是否支持删除键,不选择任何信息,直接点击删除按钮,删除某条信息时,应该有确认提示

(1)是否能连续删除多个产品

(2)当只有一条数据时,是否可以删除成功

(3)删除一条数据后,是否可以添加相同的数据

(4)如系统支持批量删除,注意删除的信息是否正确

(5)如有全选,注意是否把所有的数据删除

(6)删除数据时,要注意相应查询页面的数据是否及时更新

(7)如删除的数据与其他业务数据关联,要注意其关联性(如删除部门信息时,部门下游员工,则应该给出提示)

(8)如果结果列表中没有记录或没有选择任何一条记录,点击删除按钮系统会报错。

如:某一功能模块具有最基本的增删改查功能,则需要进行以下测试

单项功能测试(增加、修改、查询、删除)

增加——>增加——>增加 (连续增加测试)

增加——>删除

增加——>删除——>增加 (新增加的内容与删除内容一致)

增加——>修改——>删除

修改——>修改——>修改 (连续修改测试)

修改——>增加(新增加的内容与修改前内容一致)

修改——>删除

修改——>删除——>增加 (新增加的内容与删除内容一致)

删除——>删除——>删除 (连续删除测试)

7、上传图片测试

(1)文件类型正确、大小合适

(2)文件类型正确,大小不合适

(3)文件类型错误,大小合适

(4)文件类型和大小都合适,上传一个正在使用中的图片

(5)文件类型大小都合适,手动输入存在的图片地址来上传

(6)文件类型和大小都合适,输入不存在的图片地址来上传

(7)文件类型和大小都合适,输入图片名称来上传

(8)不选择文件直接点击上传,查看是否给出提示

(9)连续多次选择不同的文件,查看是否上传最后一次选择的文件

8、查询结果列表

(1)列表、列宽是否合理

(2)列表数据太宽有没有提供横向滚动

(3)列表的列名有没有与内容对应

(4)列表的每列的列名是否描述的清晰

(5)列表是否把不必要的列都显示出来

(6)点击某列进行排序,是否会报错(点击查看每一页的排序是否正确)

(7)双击或单击某列信息,是否会报错

9、返回键检查

(1)一条已经成功提交的记录,返回后再提交,是否做了处理

(2)检查多次使用返回键的情况,在有返回键的地方,返回到原来的页面多次,查看是否会出错

10、界面和易用性测试

(1)风格、样式、颜色是否协调

(2)界面布局是否整齐、协调(保证全部显示出来的,尽量不要使用滚动条

(3)界面操作、标题描述是否恰当(描述有歧义、注意是否有错别字)

(4)操作是否符合人们的常规习惯(有没有把相似的功能的控件放在一起,方便操作)

(5)提示界面是否符合规范(不应该显示英文的cancel、ok,应该显示中文的确定等)

(6)界面中各个控件是否对齐

(7)日期控件是否可编辑

(8)日期控件的长度是否合理,以修改时可以把时间全部显示出来为准

(9)查询结果列表列宽是否合理、标签描述是否合理

(10)查询结果列表太宽没有横向滚动提示

(11)对于信息比较长的文本,文本框有没有提供自动竖直滚动条

(12)数据录入控件是否方便

(13)有没有支持Tab键,键的顺序要有条理,不乱跳

(14)有没有提供相关的热键

(15)控件的提示语描述是否正确

(16)模块调用是否统一,相同的模块是否调用同一个界面

(17)用滚动条移动页面时,页面的控件是否显示正常

(18)日期的正确格式应该是XXXX-XX-XX或XXXX-XX-XX XX:XX:XX

(19)页面是否有多余按钮或标签

(20)窗口标题或图标是否与菜单栏的统一

(21)窗口的最大化、最小化是否能正确切换

(22)对于正常的功能,用户可以不必阅读用户手册就能使用

(23)执行风险操作时,有确认、删除等提示吗

(24)操作顺序是否合理

(25)正确性检查:检查页面上的form, button, table, header, footer,提示信息,句子语法等是否正确。

(26)系统应该在用户执行错误的操作之前提出警告,提示信息.

(27)页面分辨率检查,在各种分辨率浏览系统检查系统界面友好性。

(28)合理性检查:做delete, update, add, cancel, back等操作后,查看信息回到的页面是否合理。

11、功能的逻辑性

(1)核心的功能逻辑,主要集中在奖励,升级,授权,库存变动,资产变动等方面。

(2)测试人员和开发人员,产品经理,项目经理,先沟通确认完整的逻辑。

(3)测试需模拟多个用户账号,多种关系链,多笔订单,不同流程的,开发人员可以协助造数据。

(4)测试人员把每种情况,以用例的形式记录,并验证通过后,视为测试通过。

上一个
需求排序
下一个
测试评审
最近修改: 2026-01-27