通用的测试用例编写大全(登录测试/web测试等)

article/2025/11/11 17:10:34

目录

登录

网上资料:

一、基本功能测试:

 二、页面测试:

三 、安全测试:

四、性能测试:

五、其它测试:

WEB网站测试

一、输入框:

二、提交/确定按钮:

三、后退按钮,返回键:

四、链接测试:

五、session超时/失效:

六、 图形界面测试:

七、操作流程测试:

八、列表及翻页功能测试:

九、页面提示语测试:

十、浏览器兼容性:

十一、是否支持tab键,enter键:

十二、页面title测试:

十三、刷新键:

十四、滚动条测试:


登录

自己总结:

1)空白

用户名和密码均为空/用户名填写,密码为空/用户名为空,密码填写

2)错误校验

输入错误的用户名和密码/用户名错误密码正确/用户名正确密码错误

3)大小写区分(如:用户名和密码都为小写时)

用户名和密码均大写/用户名大写,密码小写/用户名小写,密码大写

4)存在空格

合法的用户名或密码前插入空格/合法的用户名或密码中间插入空格/合法的用户名或密码后插入空格。

5)已注销的用户名登录

6)已禁止/锁住的用户名登录

7)长短校验

在给定的用户名和密码规则下,超出或少于指定的长度登录(测试临界值)

8)非法字符校验(如@#¥%等字符)

9)多次错误登录,是否锁住

用户名或者密码在连续输错3次或者5次的情况下,账号要被锁定

                      

10)是否支持tab和enter键

输入框是否支持tab键或支持Enter键登录

11)多点登录/提示信息

同一个用户不能同一时间在不同的位置登录

12)登录是否记住用户名和密码

13)密码明文

14)切换用户,是否显示前一用户信息

15)登陆后前进后退操作

16)查看密码转码是否有规律,是否每次都是一样

17)密码是否可以用MD5解密

18)登录超时(经过一段时间自动退出)

19)SQL注入

20)跨站

21)COOKIE注入

22)COOKIE加密检查

23)提交用get方法(不安全)

网上资料:

一、基本功能测试:

  输入正确的用户名和密码登录成功

  输入错误的用户名密码登录失败

  用户名正确,密码错误,是否提示输入密码错误?

  用户名错误,密码正常,是否提示输入用户名错误?

  用户名和密码都错误,是否有相应提示?

  用户名密码为空时,是否有相应提示?

如果用户未注册,提示请先注册,然后进行登录

  已经注销的用户登录失败,提示信息友好?

  密码框是否加密显示?

  用户名是否支持中文、特殊字符?

  用户名是否有长度限制?

  密码是否支持中文,特殊字符?

  密码是否有长度限制?

  密码是否区分大小写?

  密码为一些简单常用字符串时,是否提示修改?如:123456

  密码存储方式?是否加密?

  登录功能是否需要输入验证码?

 验证码有效时间?

  验证码输入错误,登录失败,提示信息是否友好?

  输入过期的验证码能否登录成功?

  验证码是否容易识别?

  验证码换一张功能是否可用?点击验证码图片是否可以更换验证码?

  用户体系:比如系统分普通用户、高级用户,不同用户登录系统后可的权限不同。

  如果使用第三方账号(QQ,微博账号)登录,那么第三方账号与本系统的账号体系对应关系如何保存?首次登录需要极权等

 二、页面测试:

  登录页面显示是否正常?文字和图片能否正常显示,相应地提示信息是否正确,按钮的设置和排列是否正常,页面是否简洁壮观等。

  页面默认焦点是否定位在用户名的输入框中

首次登录时相应的输入框是否为空?或者如果有默认文案,当点击输入框时默认方案是否消失?

  相应的按钮如登录、重置等,是否可用;页面的前进、后退、刷新按钮是否可用?

  快捷键Tab,Esc,Enter 等,能否控制使用

  兼容性测试:不同浏览器,不同操作系统,不同分辨率下界面是否正常

                                

三 、安全测试:

 不登录:浏览器中直接输入登录后的地址,看是否可以直接进入

 登录成功后生成的Cookie,是否是httponly (否则容易被脚本盗取)

  用户名和密码是否通过加密的方式,发送给Web服务器

  用户名和密码的验证,应该是用服务器端验证, 而不能单单是在客户端用javascript验证

  用户名和密码的输入框,应该屏蔽SQL注入攻击

  用户名和密码的的输入框,应该禁止输入脚本 (防止XSS攻击)

  错误登陆的次数限制(防止暴力破解)

 考虑是否支持多用户在同一机器上登录;

  考虑一用户在多台机器上登录

四、性能测试:

  单用户登录系统的响应时间是否符合"1-3-5"原则,所谓1-3-5原则为:网站响应时间1-3-5原则,1秒是很好,3s是好,超过5秒用户就容易跳失

  用户数在临界点时并发登录是否还能符合"3-5-8"原则

  压力:大量并发用户登录,系统的响应时间是多少?系统会出现宕机、内存泄露、cpu饱和、无法登录吗?

  稳定性: 系统能否处理并发用户数在临界点以内连续登录N个时的场景?

五、其它测试:

  连续输入3次或以上错误密码,用记是否被锁一定时间(如:15分钟)?时间内不允许登录,超出时间点是否可以继续登录。

  用户session过期后,重新登录是否还能重新返回这前session过期的页面?

  用户名和密码输入框是事支持键盘快捷键?如:撤销、复制、粘贴等等

  是否允许同名用户同时登录进行操作?考虑web和app同时登录

  手机登录时,是否先判断网络可用?

  手机登录时,是否先判断app存在新版本?

  是否支持单点登录?

  是否有埋点接口

WEB网站测试

一、输入框:

1、正常的字母/文字/数字(正常流程的测试);

2、重复提交(输入内容后,重复点击提交按钮);

3、纯异常字符/正常输入夹杂异常字符(!@#¥%……&**等等);

4、长度限制(边界值测试,假设最小长度为N,最大长度为M,则测试N-1,N,M,M+1);

5、重复输入(已经存在记录,重复输入);

6、空提交(什么都不输入直接提交,看程序如何处理);

7、含有空格(开头,中间,结尾);

8、含有回车(输入内容中含有回车,查看如何处理,如何保存,以及如何显示);

9、复制粘贴操作(如密码需二次确认验证,此时复制粘贴不可生效,其余的情况应该生效);

10、如有格式要求,请验证格式(如电话号码的格式要求,运营商号段的要求);

11、输入非法字符集,如:null,\n;

12、全/半角的符号是否区分;

13、对于搜索输入框:

若输入 * 是否能搜索出全部的内容;

若输入空格能否搜索出全部的内容;

若输入比要搜索的全部内容超长的字符,能否搜出相应的内容;

输入脚本/html语言,是否会过滤(此处涉及安全测试,可暂不考虑)。

二、提交/确定按钮:

1、对于提交/确定按钮,点击后,数据是否成功处理,页面跳转是否正确;

2、连续点击提交/确定按钮页面如何处理,注意连续提交时操作要快,达到签个提交尚未处理完成,点击下一个提交,程序如何处理,是否报错;

3、对于取消按钮,点击“取消”按钮后,查看数据有没提交。

三、后退按钮,返回键:

1、对于页面的操作,大家要注意测试下浏览器上的后退按钮操作,查看下做完操作后点击后退按钮后,之前的操作是否会撤销?

2、连续点击后退按钮,查看页面会做何种处理,是否会报错;

3、比如已经退出登录的页面,点击后退按钮,页面是否仍是登录状态?

4、对于有返回键的页面,对于已经成功提交的记录,点击返回键后,看如何处理之前的操作;

5、对于有连续返回键的页面,连续点击返回键,页面如何处理,是否报错。

四、链接测试:

1、首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;

2、其次,测试所链接的页面是否存在;

3、最后,保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。

要注意的是:未登录时各功能跳转页面的测试;对于网站测试各个页面的跳转都是需要点击测试的,以及需要登录的操作,在未登录的情况下去操作,跳转是否正常都需要验证;

五、session超时/失效:

1、登录后长时间不操作,session超时,查看页面跳转;

2、这涉及所有需要登录的才能操作的页面;

3、测试这种情况的简便方法:登录网站,将需要测试的页面Page1在另一个标签中打开,然后再在原来的页面中退出登录,此时session已经失效;这样再去操作Page1,即可达到session失效或超时的条件。

六、 图形界面测试:

1、首先要确保图形有明确的用途。

2、网站的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面。

3、其次验证所有页面字体的风格是否一致;在这要验证背景颜色应该与字体颜色和前景颜色相搭配。

七、操作流程测试:

测试中不仅测试界面友好性,还要对操作流程易用性或者友好性做测试.

1、不仅要验证操作流程是否符合大部分用户的操作习惯;

2、是否有多余的操作流程,对于多余的流程是没有任何好处的,不仅使操作繁琐还有可能出现不必要的漏洞;

3、操作流程是否顺畅,会不会产生让用户误解的步骤;

4、每个步骤操作完以后,需要给出提示的是否明确给出。

八、列表及翻页功能测试:

1、对于页面中的各项列表,都要测试其翻页功能,不仅要注意测试各个翻页相关按钮(注意:tab键,enter键的测试),特别是首页,尾页;

2、还要测试当该列表中含有的页数超过5页,10页甚至更多页的情况;同时要验证5页以后,或者10页以后,或者很多也以后的页面是否正常;

九、页面提示语测试:

页面提示语不仅要友好,还要做到整个网站风格(字体大小,字体颜色,提示的排版,背景,提示语气等)要统一;对于这种提示语的测

试,在测试的过程分别提出来 可能会比较繁琐,而且浪费时间和体力;对于这一类问题,最好是统一提出,统一总结,因为此类情况大部

分会是比较类似的情况,可统一整理出文档,反馈给开发 人员,统一修改,这样能够提高双方的工作效率。

十、浏览器兼容性:

现在新开发的项目对浏览器的兼容性要求也是比较高的,比较主流的浏览器就是IE6,IE7,IE8以及FireFox,苹果的浏览器Safari等,通过我

们测试的情况,IE6是最不容易兼容的浏览器,其次是IE7,Safari;IE8和FireFox差不多,一般问题不大。在测试的时候大家最好用IE6浏览

器,容易发现问题;对于其他IE的测试可以通过IETester工具,这个并不是完全精准的,但是鉴于一个电脑只能安装一个IE浏览器,只能退而

求其次了;当然也可以用其他同事的浏览器确认测试。

十一、是否支持tab键,enter键:

在测试网站的按钮或者输入框时,要测试是否支持tab键和enter键,利用这两个键做操作是用户习惯性的操作;

十二、页面title测试:

一个网站的页面title是最好要统一的;

要验证页面title的显示是否正确;

风格是否统一;

类似操作的不同页面的title是否与对应的页面相一致。

十三、刷新键:

点击浏览器上的刷新键,检查页面如何处理,是否报错?

十四、滚动条测试:

对于滚动条的测试,要注意测试拉动滚动条是否异常

感谢每一个认真阅读我文章的人!!!

我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。欢迎大家点击下方链接加入群聊与我一起学习交流,如果在学习或工作中遇到问题可以直接进群询问,群里也会有大神帮忙解答。

 


http://chatgpt.dhexx.cn/article/adDZWZlg.shtml

相关文章

软件测试实例:登录功能怎么设计测试用例

软件测试到底怎么设计测试用例?测试用例需要设计那些方面的环节?带着问题小编为你分享软件测试实例,登录功能怎么设计测试用例。 明确具体需求: 有一个登录页面,有一个账号和一个密码输入框, 一个提交按钮。 此题的考…

【转载】登录页面测试用例

登录模块测试用例整理: 登录模块 界面UI测试 1.布局是否合理,输入框,按钮对齐方式 2.输入框和按钮的高度,长度是否符合要求 3.界面的设计风格是否与UI的设计风格统一 4.界面的文字简洁易懂,没有错别字 功能测试 1.用户…

登录的测试用例设计点

在看了一个有关登录的一个课程之后,发现自己以前对登录测试的用例设计简直是井底之蛙,在跟领导聊天之后一致认为可以就这一课文章进行一个整理概括,加以完善,还望大家多多提意见,有借鉴到的内容还望见谅,本…

kubeadm 更改NodePort端口范围

kubeadm 更改NodePort端口范围 kubernetes默认端口号范围是 30000-32767 ,如果期望值不是这个区间则需要更改。 一、找到配置文件里,一般的在这个文件夹下: /etc/kubernetes/manifests/ 二、找到文件名为kube-apiserver.yaml 的文件&#xff…

Spark2自定义Driver和Executor端口范围

文章目录 1.配置端口范围2.配置文件修改3.集群验证 组件版本Ambari2.7.3HDP3.1.0.0-78Spark22.3.2 Spark 的 Driver 和 Executor 之间通讯端口是随机的,Spark 会随选择 1024~65535(含) 之间的端口,因此在集群节点之间需要关闭防火…

FTP防火墙数据通道端口范围无法设置

云服务器通过IIS搭建FTP如何设置防火墙端口,而FTP被动模式默认会有一个随机端口范围。 通常这个服务如果是在本地没有什么影响。但如果在云服务器上搭建。如果不放通这些全部的随机端口范围。就会导致间歇性无法访问FTP目录。 1.数据端口显示灰色,网上看…

【Linux系统vsftp被动模式数据下载端口范围】

一、 vsftp被动模式设置端口范围 参考资料:https://blog.51cto.com/u_12476193/2308486 前提成功安装vsftp软件能运行vsftp服务并能下载上传文件。 二、vsftp修改被动模式: 1、 修改vsftpd配置文件 2、 输入vim /etc/vsftpd/vsftpd.conf打开配置文件…

ingress-nginx更改默认端口/修改apiserver端口范围

问题: 直接更改ingress svc yml文件更改端口报错。 环境说明 1、 k8s部署在纯内网环境,想要外网可以访问,需要外层的服务器做nginx转发。由于公司网络限制,内网服务器和外层服务器互相通信需要使用固范围内的端口。 2、ingres…

kubesphere设置nodePort端口范围

kubesphere默认的NodePort端口范围为30000-32768,但是咱们可以修改这个范围,本文针对的kubesphere版本为3.1.1,修改/etc/kubernetes/manifests目录下的kube-apiserver.yaml文件,添加下面的配置 --service-node-port-range1-65535…

FreeSWITCH的MRCP端口范围

对FreeSWITCH在unimrcp模块进行压力测试时,发现经过两万路呼叫之后,会有一些呼损。查看日志,全部是这个错误导致: AUDIO RTP REPORTS ERROR: [Bind Error! *******] 显然,RTP端口出现冲突了,导致RTP端口绑…

服务器网站端口 开放设置,服务器设置开放端口范围

服务器设置开放端口范围 内容精选 换一换 本节操作指导用户关闭Windows操作系统云服务器的防火墙,以及防火墙添加例外端口的操作。本节操作以2012操作系统云服务器为例。防火墙开启和设置安全组是对云服务器的双重保护,如果选择关闭防火墙,建议安全组谨慎开放端口。登录Wind…

Windows 查找端口占用及端口范围详解

端口范围 端口的取值范围是:0-65535。 在这个取值范围中1023以下的端口已经分配给了常用的一些应用程序,这个数字以后的端口部分被使用,所以网络编程可用的端口一般在1024之后选取。 查看端口占用情况 查看方法:首先启动cmd命…

mongo数据库之“upsert”(一种特殊的更新)

upsert: 是一种特殊的更新,如果没有找到符合条件的更新条件的文档,就会以这个条件和更新文档为基础创建一个新的文档;如果找到了匹配的文档,就正常更新,upsert非常方便,不必预置集合&#xff0c…

【Flink】Upsert Kafka Demo

Upsert Kafka SQL Connector Upsert Kafka 连接器支持以 upsert 方式从 Kafka topic 中读取数据并将数据写入 Kafka topic。 作为 source,upsert-kafka 连接器生产 changelog 流,其中每条数据记录代表一个更新或删除事件。更准确地说,数据记…

flink sql 如何upsert 到一张hologres表中

Flink Table 的三种 Sink 模式 作为计算引擎 Flink 应用的计算结果总要以某种方式输出,比如调试阶段的打印到控制台或者生产阶段的写到数据库。而对于本来就需要在 Flink 内存保存中间及最终计算结果的应用来说,比如进行聚合统计的应用,输出…

Upsert Kafka Connector - 让实时统计更简单

点击上方蓝色字体,选择“设为星标” 回复”资源“获取更多资源 在某些场景中,例如读取 compacted topic 或者输出(更新)聚合结果的时候,需要将 Kafka 消息记录的 key 当成主键处理,用来确定一条数据是应该作…

Flink 1.12 以 upsert 的方式读写 Kafka 数据

在某些场景中,比如GROUP BY聚合之后的结果,需要去更新之前的结果值。这个时候,需要将 Kafka 消息记录的 key 当成主键处理,用来确定一条数据是应该作为插入、删除还是更新记录来处理。在Flink1.11中,可以通过 flink-cd…

mysql upsert语法_Mysql - Upsert功能实现

在看到了mongoTemplate的操作之后,觉得这种东西是很符合我们程序员世界的操作的,但是看到mysql的jdbc之后,瞬间一百万个小泥马从头飘过,所以就想自己实现一个mysql版本的upsert功能,有set与increase,decrease。 实现操作 参考mongoTemplate,创建一个update.java与query.ja…

mysql实现upsert(没有就新增,有就修改)

目录 写在前面 建表准备 upsert语句 总结 写在前面 当实际工作中遇到这么一种需求:数据库没有这条数据,我需要新增,有这条数据我需要修改,或者某个字段的数量进行调整。 那么我们就可以考虑使用mysql的upsert语句了。 建表准…

SQL中的UPSERT是什么

SQL 中的 UPSERT 是什么 UPSERT 是什么UPSERT 语法UPSERT 工作原理UPSERT 代码实例关系数据库中的UPSERT UPSERT 是什么 Upsert 是 update 和 insert 的组合。在关系数据库的上下文中,upsert 指的是一种数据库操作,如果表中已经存在指定值,则…