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

article/2025/11/11 17:05:07

软件测试到底怎么设计测试用例?测试用例需要设计那些方面的环节?带着问题小编为你分享软件测试实例,登录功能怎么设计测试用例。在这里插入图片描述
明确具体需求:

有一个登录页面,有一个账号和一个密码输入框, 一个提交按钮。

此题的考察目的:

1、了解需求(测什么都是从了解需求开始);

2、是否有设计 Test Case 的能力

3、是否熟悉各种测试方法;

4、是否有丰富的 Web 测试经验;

5、是否了解 Web 开发;

分析需求:

1、登录界面应该是弹出窗口式的,还是直接在网页里面;

2、账号长度和密码的强度(比如需要多少位、大小写敏感、特殊字符混搭等);

3、界面美观是否有特殊要求?(即是否要进行 UI 测试);

4、····

用例设计:

测试需求分析完成后,开始用例设计,主要可以从以下几个方面考虑:

功能测试(Function Test)

1、输入正确的账号和密码,点击提交按钮,验证是否能正确登录。(正常输入)

2、输入错误的账号或者密码, 验证登录会失败,并且提示相应的错误信息。(错误校验)

3、登录成功后能否跳转到正确的页面(低)

4、账号和密码,如果太短或者太长,应该怎么处理(安全性,密码太短时是否有提示)

5、账号和密码,中有特殊字符(比如空格),和其他非英文的情况(是否做了过滤)

6、记住账号的功能

7、登录失败后,不能记录密码的功能

8、账号和密码前后有空格的处理

9、密码是否加密显示(星号圆点等)

10、牵扯到验证码的,还要考虑文字是否扭曲过度导致辨认难度大,考虑颜色(色盲使用者),刷新或换一个按钮是否好用

11、登录页面中的注册、忘记密码,登出用另一帐号登录等链接是否正确

12、输入密码的时候,大写键盘开启的时候要有提示信息。

13、什么都不输入,点击提交按钮,看提示信息。(非空检查)

界面测试(UI Test):

1、布局是否合理,2 个 Testbox 和一个按钮是否对齐

2、Testbox 和按钮的长度,高度是否复合要求

3、界面的设计风格是否与 UI 的设计风格统一

4、界面中的文字简洁易懂,没有错别字。

性能测试(Performance Test):

1、打开登录页面,需要几秒

2 、输入正确的账号和密码后,登录成功跳转到新页面,不超过 5 秒

安全性测试(Security Test):

1、登录成功后生成的 Cookie 是否有 HttpOnly(降低脚本盗取风险)

2、账号和密码是否通过加密的方式,发送给 Web 服务器

3、账号和密码的验证,应该是用服务器端验证,而不能单单是在客户端用 javaScript 验证

4、账号和密码的输入框,应该屏蔽 SQL 注入攻击

5、账号和密码的的输入框,应该禁止输入脚本(防止 XSS 攻击)

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

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

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

可用性测试(Usability Test):

1、是否可以全用键盘操作,是否有快捷键

2、输入账号,密码后按回车,是否可以登录

3、输入框是否可以以 Tab 键切换

兼容性测试(Compatibility Test):

1、主流的浏览器下能否显示正常已经功能正常(IE6~11, FireFox, Chrome, Safari 等 )

2、不同的平台是否能正常工作,比如 Windows, Mac

3、移动设备上是否正常工作,比如 iPhone, Android

4、不同的分辨率

本地化测试 (Localization Test):

1、不同语言环境下,页面的显示是否正确。

软件辅助性测试 (Accessibility Test):

软件辅助功能测试是指测试软件是否向残疾用户提供足够的辅助功能

1、高对比度下能否显示正常(视力不好的人使用)

根据这个软件测试实例登录功能如何设计测试用例。我们可以了解,一个完整的测试用例需要完成明确测试需求、了解测试目的、分析需求、用例设计、界面测试、性能测试、安全性测试、可用性测试、兼容性测试、本地化测试以及软件辅助性测试等等多个方面。虽然是一个简单的登录页面测试,但其中涉及到非常多的测试知识点。虽然实际软件测试过程非常复杂,但是学习软件测试却相对要简单,只要能掌握其核心要素以及相关的测试技能,就可以找到比较合适的工作。

干货分享

如果你已经工作但是经常觉得难点很多,觉得自己测试方面学的不够精想要继续学习的,想转行怕学不会的,都可以关注我【软件测试小dao】,公众号内可领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!


http://chatgpt.dhexx.cn/article/JEJB8UkA.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 指的是一种数据库操作,如果表中已经存在指定值,则…

列存储中常用的数据压缩算法

列存储,作为一种针对数据查询和数据分析设计的数据存储策略,在“大数据”越来越普及的今天可以说是相当地火热。相较于行存储,列存储的最大优势有二,其一就是查询涉及到数据库的哪几个列就读哪几个列,不读一点与查询不…