密码组件校验规则该如何测试?

简介: 大家好,我是阿萨。日常工作生活中处处需要密码。现在随便个网站都需要输入密码,而且密码校验也挺严格的。那么针对密码输入框的校验规则测试用例该如何设计?

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第20天,点击查看活动详情

大家好,我是阿萨。日常工作生活中处处需要密码。现在随便个网站都需要输入密码,而且密码校验也挺严格的。那么针对密码输入框的校验规则测试用例该如何设计?

日常我们经常碰见如下密码校验提示信息,今天我们测试个类似场景。


36.jpg

36.jpg


一. 需求分析

一般情况下,密码都需要满足的要求有:

  1. 长度大于8,小于32位。
  2. 大小写字母都必须有
  3. 包含数字
  4. 包含特殊字符
  5. 不能包含用户名,或者用户名的倒序。

以上5个条件任意一个不满足都不能认为密码是OK的。

必须满足以上5个条件才可以认为是强密码。

今天需求简化了一下。没有列举截图里的图片原因是:

  1. 一般人其实不知道什么是弱密码。
  2. 常用的具有特殊含义的字符串,其实很多人也不太清楚。
  3. 三个及以上键位的,如果用惯了9宫格输入法,会忘记键盘键位。

因为都是无效等价类的校验,原理类似。所以简化成上面需求。


二. 设计测试用例方法分析

一提到设计测试用例,等价类划分法,边界值这些耳熟能详的方法都出来啦,还有比较高级一点的pairwise,俗称pair 因子法。

那我们看看等价类,以上5个条件都有有效等价类和无效等价类。分别列举符合5个条件的有效等价类和无效等价类。然后pair因子组合下。

长度使用边界值法:

7,8,32,33位长度的密码进行测试。

 

测试重点是所有无效等价类场景列举全面。

大小写的无效等价类,全大写或者全小写。

数字无效等价类和大小写无效等价类可以使用相同的内容。

特殊字符的无效等价类就是大小写和数字啦。

用户信息的无效等价类就是使用用户名和用户名的倒序。

接下来我们列举下所有测试用例。


三. 列举测试用例。

  1. 所有条件都满足的密码。5个条件结果都为真。
  2. 长度为7/33位的其他条件都满足的密码。长度无效等价类+4个真。
  3. 长度8位,只包含小写和特殊字符以及数字的不包含用户名信息的密码。大小写无效等价类+4个真。
  4. 长度为32位,大小写和特殊字符都有,无数字的不包含用户信息的密码。数字的无效等价类+4个真。

5.长度为16位,大小写,数字,特殊字符,包含用户名的密码。用户名信息无效等价类+4个真。

  1. 全大写字母+全小写字母+数字+ 无用户名信息。长度无效等价类+特殊字符无效等价类+3个真。
  2. 所有特殊字符+1个数字+1个大写+1个小写。 5个真。
  3. 全大写字母
  4. 全小写字母
  5. 全数字

11.全特殊字符

  1. 防SQL注入测试

以上列举测试用例仅代表个人意见。欢迎私信我我的遗漏场景。

如果你喜欢我今天的答案,欢迎点赞,关注。


相关文章
|
1月前
|
资源调度 JavaScript 测试技术
单元测试:编写和运行Vue组件的单元测试
【4月更文挑战第23天】本文探讨了为Vue组件编写单元测试的重要性,以及如何设置测试环境、编写和运行测试。通过使用Jest或Mocha作为测试框架,结合Vue Test Utils,可以独立测试组件的功能,如渲染、事件处理和状态管理。编写测试用例时,应注意覆盖各种行为,并使用断言验证组件状态。运行测试并观察结果,确保测试独立性和高覆盖率。单元测试是保证代码质量和维护性的关键,应随着项目发展持续更新测试用例。
|
1月前
|
存储 弹性计算 运维
循环测试用户名与密码是否正确
【4月更文挑战第29天】
12 0
|
1月前
|
存储 弹性计算 运维
测试用户名与密码是否正确
【4月更文挑战第29天】
17 0
|
1月前
|
存储 弹性计算 运维
循环测试用户名与密码是否正确
【4月更文挑战第29天】
17 0
|
1月前
|
存储 弹性计算 运维
测试用户名与密码是否正确
【4月更文挑战第29天】
13 0
|
1月前
|
设计模式 IDE 测试技术
深入理解自动化测试框架Selenium的核心组件
【2月更文挑战第30天】 在快速迭代的软件开发过程中,自动化测试已成为确保产品质量和加快上市速度的关键。本文将深入探讨Selenium这一广泛使用的自动化测试框架,剖析其核心组件以及它们如何协同工作以提供高效、灵活的测试解决方案。我们将从Selenium架构的基础出发,详细解读WebDriver API、Selenium Grid、以及各种语言绑定等关键部分,并讨论如何通过这些组件进行有效的UI测试。
|
1月前
|
SQL 监控 测试技术
Lim测试平台变量使用规则介绍
Lim测试平台变量使用规则介绍
34 0
|
1月前
|
SQL 测试技术 数据安全/隐私保护
密码组件校验规则该如何测试?
密码组件校验规则该如何测试?
|
7天前
|
JSON Java Maven
使用`MockMvc`来测试带有单个和多个请求参数的`GET`和`POST`接口
使用`MockMvc`来测试带有单个和多个请求参数的`GET`和`POST`接口
19 3
|
1月前
|
NoSQL 安全 测试技术
接口测试用例设计的关键步骤与技巧解析
该文介绍了接口测试的设计和实施,包括测试流程、质量目标和用例设计方法。接口测试在需求分析后进行,关注功能、性能、安全等六项质量目标。流程包括网络监听(如TcpDump, WireShark)和代理工具(Charles, BurpSuite, mitmproxy, Fiddler, AnyProxy)。设计用例时,需考虑基本功能流程、输入域测试(如边界值、特殊字符、参数类型、组合参数、幂等性)、线程安全(并发和分布式测试)以及故障注入。接口测试用例要素包括模块、标题、优先级、前置条件、请求方法等。文章强调了保证接口的幂等性和系统健壮性的测试重要性。
54 5

热门文章

最新文章