首先理解两个概念:
显示功能性需求(功能性需求):指的是软件本身需要实现的具体功能。
隐式功能性需求(非功能性需求):主要涉及安全性、性能以及兼容性三大方面
以下从功能性需求设计测试用例
功能性需求:
- 输入已注册的用户名和正确的密码,验证是否登录成功;
- 输入已注册的用户名和不正确的密码,验证是否登录失败,并且提示信息正确;
- 输入未注册的用户名和任意密码,验证是否登录失败,并且提示信息正确;
- 用户名和密码两者都为空,验证是否登录失败,并且提示信息正确;
- 用户名和密码两者之一为空,验证是否登录失败,并且提示信息正确;
- 如果登录功能启用了验证码功能,在用户名和密码正确的前提下,输入正确的验证码,验证是否登录成功;
- 如果登录功能启用了验证码功能,在用户名和密码正确的前提下,输入错误的验证码,验证是否登录失败,并且提示信息正确。
- 用户名和密码是否大小写敏感;
- 用户名密码是否支持特殊字符和中文等
- 页面上的密码框是否加密显示;
- 是否可以使用登录的API发送登录请求,并绕开验证码校验
- 是否可以用抓包工具抓到的请求包直接登录
- 截取到的token等信息,是否可以在其他终端上直接使用,绕开登录。token过期时间校验
- 除了前端校验格式长度等,后端是否也校验&