如大家所知在注册接口中,手机号参数需要的是未注册的手机号,而在测试用例中,你写入的手机号不一定是未注册的。所以这时需要对注册接口中传入的手机号做处理。下面我就分享一个课程里面学到的一个处理手机号的py文件。和大家分享学习!
具体代码如下:
import random
# 第一步随机创建一个手机号
def get_mobilephone():
'''
:return: 返回一个随机的手机号码 '''
first_num = ['130', '131', '132', '133', '134', '135', '136', '137', '138', '139',
'150', '151', '152', '153', '155', '156', '157', '158', '159',
'180', '181', '182', '183', '184', '185', '186', '187', '188', '189']
start_mobile = random.choice(first_num) # 随机选取列表中值
num_str = '012345678'
end_mobile = ''.join(random.sample(num_str, 8)) # 随机从字符串中取8次
new_mobile = start_mobile + end_mobile # 拼接成一个手机号
return new_mobile
# 第二步判断随机生成的手机号是否是数据库拥有的
def is_exit_mobile(self,mobile):
'''
mobile:def get_mobilephone()中随机生成的手机号
:return: # 判断数据库中是否存在随机生成的手机号
'''
data = 'SELECT * FROM member WHERE MobilePhone = %s'
if self(data,arg=(mobile,)): # 调用__call__方法
return True
else:
return False
# 第三步如果随机生成的手机号是数据库不存在的,则返回
def creat_is_not_exit_mobile(self):
'''
:return:
'''
#循环判断随机生成的手机号码是否是之前数据库里面不存在的
while True:
mobile =self.get_mobilephone() # 调用随机生成的手机号函数,生成随机手机号
if not self.is_exit_mobile(mobile): # 如果手机号是之前数据库里面没有的循环停止,返回手机号
break
return mobile