TestCase--网站注册模块

对于web测试,注册模块是必测的一个点,所以今天就来总结一下注册模块的测试用例

参考京东的注册页面

测试用例设计如下:

一、功能测试

1.  单击“免费注册”,页面是否正常跳转

2.  直接访问注册页面链接,注册页面是否正常展示

====需求:用户名--支持中文、字母、数字、-、_的组合,4-20个字符====

3. 当输入的用户名字符数小于4个时,系统是否给出提示
4. 当输入的用户名字符数大于20个时,系统是否给出提示
5. 当输入的用户名包含特殊字符时,系统是否给出提示
6. 输入的用户名,前后存在空格时,系统是否自动去除前后空格
7. 输入已注册的用户名,系统是否给出提示

8. 输入符合需求的用户名,是否判断合格

====设置密码--建议使用字母、数字和符号两种及以上的组合,6-20个字符====

9.设置的密码字符数小于6个时,系统是否给出提示
10.设置的密码字符数大于20个时,系统是否给出提示
11.输入的密码,前后存在空格时,系统是否自动去除前后空格
12.设置的密码为单一字符类型时,系统是否给出提示
13.输入框中展示的字符,是否加密显示

14. 输入符合需求的密码,是否判断合格

====确认密码必须与上一个输入密码保持一致====

15.确认密码是否可以复制设置密码中的密码
16.确认密码中不输入,系统是否给出提示
17.确认密码中输入密码与设置的密码不一致,系统是否给出提示
18.确认密码中输入密码与设置的密码一致,账户是否可以注册成功
19.确认密码输入框中展示的字符,是否加密显示

====验证手机号码的合法性====

20.不输入手机号码,系统是否给出提示
21.手机号码输入框中是否允许输入非数字的字符
22.输入10位数字的手机号,系统是否给出提示
23.输入12位数字的手机号,系统是否给出提示
24.输入已注册过的手机号,系统是否给出提示
25.输入未注册且合法的手机号码,系统是否给出提示

====验证验证码的正确性====

26.点击图片是否可以正常刷新验证码
27.多次点击图片是否可以正常刷新验证码
28.当输入的验证码与图片不一致时,系统是否给出提示
29.当输入的验证码与图片一致时,系统是否给出提示

====验证手机验证码的正确性====

30.当手机号码未验证通过,验证码验证通过时,该按钮是否可以单击
31.当手机号码验证通过,验证码未验证通过时,该按钮是否可以单击
32.当手机号码和验证码都未验证通过时,该按钮是否可以单击
33.当手机号码和验证码都验证通过时,该按钮是否可以单击
34.单击该按钮之后,系统是否能够正常发送验证短信
35.该按钮是否可以连续多次单击
36.当输入的手机验证码与短信中不一致时,系统是否给出提示
37.当输入的手机验证码与短信中一致时,系统是否给出提示

====立即注册功能验证====

38.我已阅读并同意 《京东用户注册协议》前的单选框,是否可以正常勾选
39.《京东用户注册协议》是否处于可单击状态
40.当上述各项信息存在未验证通过的情况时,是否可以单击“立即注册”
41.不勾选我已阅读并同意 《京东用户注册协议》前的单选框时,是否可以单击“立即注册”
42.上述输入框都已验证通过,且勾选我已阅读并同意 《京东用户注册协议》前的单选框时,“立即注册”按钮是否处于可单击状态
43.注册成功之后,页面是否会正常跳转

二、 UI测试

44.界面的设计风格是否与UI的设计风格统一
45.界面中的文字是否简洁易懂,没有错别字
46.布局是否合理,输入框和按钮是否对齐
47.输入框和按钮的长度,高度是否符合要求

三、易用性测试
48.是否可以全用键盘操作
49.是否可以单击“enter”键完成注册
50.输入框能否可以通过Tab键切换

三、安全性测试

51. 输入框是否屏蔽SQL注入

52.输入框是否避免跨站脚本攻击

 

目前就想到这些,欢迎指正

转载于:https://www.cnblogs.com/mmmaolj/p/6126165.html

首先,需要安装 `ddt` 和 `requests` 模块。可以使用以下命令进行安装: ``` pip install ddt requests ``` 接下来,我们可以编写测试用例脚本。假设我们要测试的接口为 `http://localhost:8080/12306/register`,其中需要提供用户名和密码。判重接口返回的数据格式如下: ``` { "code": 0, "msg": "success", "data": { "is_registered": true } } ``` 我们可以编写如下的测试用例脚本: ```python import unittest import ddt import requests @ddt.ddt class TestRegister(unittest.TestCase): @ddt.data(("user1", "password1"), ("user2", "password2"), ("user3", "password3")) @ddt.unpack def test_register(self, username, password): # 构造求参数 data = { "username": username, "password": password } # 发送求 response = requests.post("http://localhost:8080/12306/register", data=data) # 解析响应 json_data = response.json() # 断言判重接口返回的数据是否正确 self.assertEqual(json_data["code"], 0) self.assertEqual(json_data["msg"], "success") self.assertIn("is_registered", json_data["data"]) ``` 这个测试用例脚本使用了 `ddt` 模块的 `@ddt.data` 装饰器来传递多个测试参数。在 `test_register` 函数中,我们构造求参数并发送求,然后解析响应并断言响应数据是否正确。 注意,在使用 `unpack` 参数时,需要保证测试参数的个数与函数参数的个数一致。 以上就是一个简单的12306注册用户判重接口的测试用例脚本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值