知识库-用户注册接口
- 游戏开发
- 2025-08-28 07:33:02

用户注册接口
功能:用户提供用户名、密码、邮箱、手机号和验证码进行注册。参数:用户名、密码、邮箱、手机号、验证码返回:注册成功或失败的提示信息 用例编号用例名称用户名密码邮箱手机号验证码预期结果断言1正常注册成功testuser123Test12345test123@example 13800138000123456注册成功状态码为 200,返回信息包含 “注册成功” 字样2用户名过短abTest12345test123@example 13800138000123456用户名长度不能少于 3 位状态码为 400,返回信息包含 “用户名长度不能少于 3 位” 字样3用户名过长abcdefghijklmnopqrstuTest12345test123@example 13800138000123456用户名长度不能超过 20 位状态码为 400,返回信息包含 “用户名长度不能超过 20 位” 字样4用户名包含特殊字符ab@cdTest12345test123@example 13800138000123456用户名只能包含字母、数字和下划线状态码为 400,返回信息包含 “用户名只能包含字母、数字和下划线” 字样5密码长度过短testuser12312345test123@example 13800138000123456密码长度不能少于 6 位状态码为 400,返回信息包含 “密码长度不能少于 6 位” 字样6密码长度过长testuser123abcdefghijklmnopqrst1test123@example 13800138000123456密码长度不能超过 20 位状态码为 400,返回信息包含 “密码长度不能超过 20 位” 字样7密码只包含字母testuser123abcdeftest123@example 13800138000123456密码必须包含字母和数字状态码为 400,返回信息包含 “密码必须包含字母和数字” 字样8密码只包含数字testuser123123456test123@example 13800138000123456密码必须包含字母和数字状态码为 400,返回信息包含 “密码必须包含字母和数字” 字样9邮箱格式错误testuser123Test12345testexample 13800138000123456邮箱格式不正确状态码为 400,返回信息包含 “邮箱格式不正确” 字样10手机号格式错误testuser123Test12345test123@example 1234567890123456手机号格式不正确状态码为 400,返回信息包含 “手机号格式不正确” 字样11验证码错误testuser123Test12345test123@example 13800138000654321验证码错误状态码为 400,返回信息包含 “验证码错误” 字样12用户名已存在existinguserTest12345test123@example 13800138000123456用户名已存在状态码为 400,返回信息包含 “用户名已存在” 字样13邮箱已存在testuser123Test12345existing@example 13800138000123456邮箱已被注册状态码为 400,返回信息包含 “邮箱已被注册” 字样14手机号已存在testuser123Test12345test123@example 13900139000123456手机号已被注册状态码为 400,返回信息包含 “手机号已被注册” 字样15所有参数为空用户名、密码、邮箱、手机号、验证码均为必填项状态码为 400,返回信息包含 “用户名、密码、邮箱、手机号、验证码均为必填项” 字样16部分参数为空(用户名)Test12345test123@example 13800138000123456用户名不能为空状态码为 400,返回信息包含 “用户名不能为空” 字样17部分参数为空(密码)testuser123test123@example 13800138000123456密码不能为空状态码为 400,返回信息包含 “密码不能为空” 字样18部分参数为空(邮箱)testuser123Test12345
13800138000123456邮箱不能为空状态码为 400,返回信息包含 “邮箱不能为空” 字样19部分参数为空(手机号)testuser123Test12345test123@example 123456手机号不能为空状态码为 400,返回信息包含 “手机号不能为空” 字样20部分参数为空(验证码)testuser123Test12345test123@example 13800138000验证码不能为空状态码为 400,返回信息包含 “验证码不能为空” 字样 import unittest from ddt import ddt, data, unpack import openpyxl import requests @ddt class TestUserRegistration(unittest.TestCase): # 替换为你的 Excel 文件路径 file_path = 'your_excel_file.xlsx' workbook = openpyxl.load_workbook(file_path) sheet = workbook.active # 从 Excel 文件的第二行开始读取数据,将每行数据作为一个元素添加到 test_data 列表中 test_data = [row for row in sheet.iter_rows(min_row=2, values_only=True)] @data(*test_data) @unpack def test_user_registration(self, _, __, username, password, email, phone, code, ___, assertion): url = ' example /register' # 构造请求体,包含用户名、密码、邮箱、手机号和验证码 payload = { 'username': username, 'password': password, 'email': email, 'phone': phone, 'code': code } # 发送 POST 请求到指定的注册接口,并将请求体以 JSON 格式发送 response = requests.post(url, json=payload) # 从断言信息中分割出状态码和返回信息的断言部分 # 例如,断言信息 "状态码为 200,返回信息包含“注册成功”字样" 会被分割成两部分 status_code, message = assertion.split(',') # 验证响应的状态码是否符合预期 # 先从状态码断言部分提取出预期的状态码,将其转换为整数类型 # 然后使用 self.assertEqual 方法比较响应的状态码和预期的状态码是否相等 self.assertEqual(response.status_code, int(status_code.split('为 ')[1])) # 验证响应的文本内容是否包含预期的信息 # 从返回信息断言部分提取出预期包含的信息 # 然后使用 self.assertIn 方法检查该信息是否存在于响应的文本中 self.assertIn(message.split('包含“')[1].split('”')[0], response.text) if __name__ == '__main__': unittest.main()对注册接口进行测试,用户通过用户名、密码、邮箱、手机号和验证码完成注册。
用例设计:遵循全面覆盖原则。正向用例使用合规参数,预期注册成功;逆向用例涵盖参数格式错误、为空等异常,预期失败并返回对应提示。脚本实现:采用 Python 结合 ddt,用 openpyxl 读取 Excel 数据,requests 发送请求。测试方法中构造请求体,按 Excel 断言验证状态码与信息。环境处理:测试环境与后端沟通,将验证码固定为 123456,简化流程且不影响生产。知识库-用户注册接口由讯客互联游戏开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“知识库-用户注册接口”