def test02_recharge(self): #1、开户后账户进行登录 #准备测试数据 phone = app.phone1 #调用API接口中的方法来发送请求,并接收响应 response = self.login_api.login(self.session, phone) logging.info("get login response = {}".format(response.json())) #针对收到的响应进行断言 assert_utils(self, response, 200, 200, '登录成功') #2、获取充值验证码 #准备测试数据 r = random.random() #调用API接口中的方法来发送请求,并接收响应 response = self.trust_api.get_recharge_verify_code( self.session, str(r)) # 针对收到的响应进行断言 self.assertEqual(200, response.status_code) #3、发送充值请求 #准备测试数据 amount = '1000' #调用API接口中的方法来发送请求,并接收响应 response = self.trust_api.recharge(self.session, amount) logging.info("recharge response = {}".format(response.json())) # 针对收到的响应进行断言 self.assertEqual(200, response.status_code) self.assertEqual(200, response.json().get("status")) #4、获取充值响应中的数据,发送第三方接口请求 #准备测试数据 form_data = response.json().get("description").get("form") #调用封装第三方接口的方法来发送请求,并接收响应 response = third_request_api(form_data) logging.info("third request response = {}".format(response.text)) # 针对收到的响应进行断言 self.assertEqual("NetSave OK", response.text)
def test_03_modify_department(self): response = self.depart.modify_dep(id=self.modify_id, headers=self.headers, name="影子200", code="2020") print("部门修改结果:{}".format(response.json())) assert_utils(self, response, 200, True, 10000, "操作成功!")
def test01_trust_register(self): #1、认证成功的账号进行登录 #准备测试数据 phone = app.phone1 #调用API接口中的方法来发送请求,并接收响应 response = self.login_api.login(self.session, phone) logging.info("get login response = {}".format(response.json())) #针对收到的响应进行断言 assert_utils(self, response, 200, 200, '登录成功') #2、发送开户请求 # 准备测试数据 # 调用API接口中的方法来发送请求,并接收响应 response = self.trust_api.trust_register(self.session) logging.info("get trust register response = {}".format( response.json())) # 针对收到的响应进行断言 self.assertEqual(200, response.status_code) self.assertEqual(200, response.json().get("status")) #3、提取开户响应中的数据,发送第三方的开户请求 # 准备测试数据 form_data = response.json().get("description").get("form") #调用封装好的第三方请求的接口 response = third_request_api(form_data) # 针对收到的响应进行断言 self.assertEqual(200, response.status_code) self.assertEqual("UserRegister OK", response.text)
def test12_register_fail_phone_is_exist(self): #1、获取图片验证码 #准备测试数据 r = random.random() #调用API接口中的方法来发送请求,并接收响应 response = self.login_api.get_Img_code(self.session, str(r)) #针对收到的响应进行断言 self.assertEqual(200, response.status_code) #2、获取短信验证码 # 准备测试数据 phone = app.phone2 # 调用API接口中的方法来发送请求,并接收响应 response = self.login_api.get_sms_code(self.session, phone) logging.info("get sms code response = {}".format(response.json())) # 针对收到的响应进行断言 assert_utils(self, response, 200, 200, "短信发送成功") #3、注册请求 # 准备测试数据 # 调用API接口中的方法来发送请求,并接收响应 response = self.login_api.register(self.session, phone, invitePhone="13012345678") logging.info("get register response = {}".format(response.json())) # 针对收到的响应进行断言 assert_utils(self, response, 200, 100, "手机已存在!")
def test15_register_fail_sms_code_wrong(self): #1、获取图片验证码 #准备测试数据 r = random.random() #调用API接口中的方法来发送请求,并接收响应 response = self.login_api.get_Img_code(self.session, str(r)) #针对收到的响应进行断言 self.assertEqual(200, response.status_code) #2、获取短信验证码 # 准备测试数据 phone = app.phone4 # 调用API接口中的方法来发送请求,并接收响应 response = self.login_api.get_sms_code(self.session, phone) logging.info("get sms code response = {}".format(response.json())) # 针对收到的响应进行断言 assert_utils(self, response, 200, 200, "短信发送成功") #3、注册请求 # 准备测试数据 # 调用API接口中的方法来发送请求,并接收响应 response = self.login_api.register(self.session, phone, phoneCode='123456') logging.info("get register response = {}".format(response.json())) # 针对收到的响应进行断言 assert_utils(self, response, 200, 100, "验证码错误")
def test01_login_success(self): global headers response = self.dep_api.dep_login("13800000002", "123456") assert_utils(self, response, 200, True, 10000, "操作成功") token = "Bearer " + response.json().get("data") headers = {"Content-Type": "application/json", "Authorization": token} logging.info("请求头的数据为: {}".format(headers))
def test05_delete_emp(self): # 删除员工接口 response = self.emp_api.delete_emp(app.EMP_ID) logging.info("删除员工的结果为:{}".format(response.json())) # 断言 assert_utils(self, response, 200, True, 10000, "操作成功")
def test04_update_emp(self): # 更新员工接口 response = self.emp_api.update_emp("John Smith", app.EMP_ID) logging.info("修改员工的结果为:{}".format(response.json())) # 断言 assert_utils(self, response, 200, True, 10000, "操作成功")
def test07_register(self, phone, password, invite_phone, verifycode, phone_code, dy_server, status_code, status, description): #1、获取图片验证码 # 定义参数 r = random.randint(10000000, 90000000) # 调用接口类中的接口请求 response = self.login_api.getImgCode(self.session, str(r)) print(response.status_code) # 接收接口的返回结果,进行断言 self.assertEqual(200, response.status_code) # 2、获取短信验证码 # 定义参数 # 调用接口类中的接口请求 response = self.login_api.getSmsCode(phone, verifycode, self.session) logging.info( "--------------------------------get sms code response={}".format( response.json())) # 接收接口返回的结果,进行断言 assert_utils(self, response, 200, 200, "短信发送成功") #3、注册成功 # 定义参数 # 调用接口类中的接口请求 response = self.login_api.register(self.session, phone, password, invite_phone, verifycode, phone_code, dy_server) logging.info( "--------------------------------get register response={}".format( response.json())) # 接收接口返回的结果,进行断言 assert_utils(self, response, status_code, status, description)
def test01_register_success_input_mandatory(self): # 1、获取图片验证码 # 定义参数 r = random.randint(10000000, 90000000) # 调用接口类中的接口请求 response = self.login_api.getImgCode(self.session, str(r)) print(response.status_code) # 接收接口的返回结果,进行断言 self.assertEqual(200, response.status_code) # 2、获取短信验证码 # 定义参数 # 调用接口类中的接口请求 response = self.login_api.getSmsCode(self.phone1, self.imgCode, self.session) logging.info( "--------------------------------get sms code response={}".format( response.json())) # 接收接口返回的结果,进行断言 assert_utils(self, response, 200, 200, "短信发送成功") #3、注册成功 # 定义参数 # 调用接口类中的接口请求 response = self.login_api.register(self.session, self.phone1, self.pwd) logging.info( "--------------------------------get register response={}".format( response.json())) # 接收接口返回的结果,进行断言 assert_utils(self, response, 200, 200, "注册成功")
def test_04_modify_emp(self): # 调用修改员工 response_modify = self.emp_handle.modify_emp(app.EMPID, "new_tom", headers=app.HEADERS) logging.info("修改员工结果为:{}".format(response_modify.json())) # 建立连接 username:readuser # password:iHRM_user_2019 conn = pymysql.connect(host='182.92.81.159', user='******', password='******', database='ihrm') # 获取游标 cursor = conn.cursor() # 执行SQL语句 # 根据添加员工返回的id查询数据库中员工表的username,这样就能获取到修改之后的数据 sql = "select username from bs_user where id = {}".format(app.EMPID) logging.info("要查询的SQL语句为:{}".format(sql)) # 执行查询的sql语句 cursor.execute(sql) # 获取返回结果 result = cursor.fetchall() logging.info("SQL查询出来的结果为:{}".format(result)) # ('new_tom',) # 断言修改结果是否正确 # 注意:如果是用fetchall()取出的数据,那么取出result时,需要有两个下表result[0][0] self.assertEqual("new_tom", result[0][0]) # 关闭连接 cursor.close() # 关闭游标 conn.close() # 断言:响应状态码,success,code,message assert_utils(self, response_modify, 200, True, 10000, "操作成功")
def test04_update_emp(self, username, status_code, success, code, message): # 更新员工接口 response = self.emp_api.update_emp(username, app.EMP_ID) logging.info("修改员工的结果为:{}".format(response.json())) # 断言 assert_utils(self, response, status_code, success, code, message)
def test05_delete_emp(self, status_code, success, code, message): # 删除员工接口 response = self.emp_api.delete_emp(app.EMP_ID) logging.info("删除员工的结果为:{}".format(response.json())) # 断言 assert_utils(self, response, status_code, success, code, message)
def test20_login_wrong_pwd(self): wrong_pwd = 'error' #1、输入错误密码,提示错误一次 response = self.login_api.login(self.session, self.phone1, wrong_pwd) logging.info("login response = {}".format(response.json())) #对结果进行断言 assert_utils(self, response, 200, 100, "密码错误1次,达到3次将锁定账户") # 2、输入错误密码,提示错误两次次 response = self.login_api.login(self.session, self.phone1, wrong_pwd) logging.info("login response = {}".format(response.json())) #对结果进行断言 assert_utils(self, response, 200, 100, "密码错误2次,达到3次将锁定账户") # 3、输入错误密码,提示错误三次被锁定 response = self.login_api.login(self.session, self.phone1, wrong_pwd) logging.info("login response = {}".format(response.json())) #对结果进行断言 assert_utils(self, response, 200, 100, "由于连续输入错误密码达到上限,账号已被锁定,请于1.0分钟后重新登录") #4、 输入正确密码,提示被锁定 response = self.login_api.login(self.session, self.phone1, self.pwd) logging.info("login response = {}".format(response.json())) #对结果进行断言 assert_utils(self, response, 200, 100, "由于连续输入错误密码达到上限,账号已被锁定,请于1.0分钟后重新登录") #5、等待60s,再输入正确密码,提示登录成功 sleep(60) response = self.login_api.login(self.session, self.phone1, self.pwd) logging.info("login response = {}".format(response.json())) #对结果进行断言 assert_utils(self, response, 200, 200, "登录成功")
def test03_query_emp(self, status_code, success, code, message): # 调用查询员工接口 response = self.emp_api.query_emp(app.EMP_ID) logging.info("查询员工接口返回的数据为:{}".format(response.json())) # 断言 assert_utils(self, response, status_code, success, code, message)
def test02_recharge(self): #1、登录成功 # 1、认证通过的账号登录 response = self.login_api.login(self.session) logging.info("login response = {}".format(response.json())) assert_utils(self, response, 200, 200, "登录成功") #2、 获取充值验证码 r = random() response = self.trust_api.get_recharge_verify_code( self.session, str(r)) logging.info("get recharge verify code reponse = {}".format( response.text)) self.assertEqual(200, response.status_code) #3、 发送充值请求 response = self.trust_api.recharge(self.session, '10000') logging.info("recharge response = {}".format(response.json())) self.assertEqual(200, response.status_code) self.assertEqual(200, response.json().get("status")) #4、 发送第三方充值请求 # 获取响应中form表单的数据,并提取为后续第三方请求的参数 form_data = response.json().get("description").get("form") logging.info('form response={}'.format(form_data)) # 调用第三方请求的接口 response = request_third_api(form_data) logging.info('third recharge response={}'.format(form_data)) #断言response是否正确 self.assertEqual('NetSave OK', response.text)
def test03_query_emp(self): # 调用添加员共接口 response = self.emp_api.query_emp(app.EMP_ID) logging.info("查询员工接口返回的数据为:{}".format(response.json())) # 断言 assert_utils(self, response, 200, True, 10000, "操作成功")
def test04_recharge(self): #1、登录成功 response = self.login_api.login(self.session) logging.info("login response={}".format(response.json)) assert_utils(self, response, 200, 200, "登录成功") #2、发送充值验证码 r = random.random() response = self.trust_api.get_recharge_verify_code( self.session, str(r)) logging.info("get recharge verify code response={}".format( response.text)) self.assertEqual(200, response.status_code) #3、发送充值请求 response = self.trust_api.recharge(self.session, "100000000") logging.info("recharge response={}".format(response.json)) self.assertEqual(200, response.status_code) self.assertEqual(200, response.json().get("status")) #4、发送第三方充值请求 form_data = response.json().get("description").get("form") logging.info("third recharge request response={}".format(form_data)) # 调用第三方接口的请求方法 response = third_request_api(form_data) # 断言响应结果 self.assertEqual(200, response.status_code) self.assertEqual("NetSave OK", response.text)
def test01_login(self, mobile, password, status_code, success, code, message): # 发送登录请求 response = self.login_api.login(mobile, password) logging.info("登录成功的数据: {}".format(response.json())) assert_utils(self, response, status_code, success, code, message)
def test10_login_error_param(self): response = self.loginapi.login_param({ "moble": "13800000002", "password": "******" }) assert_utils(self, response, 200, False, 20001, "用户名或密码错误") logging.info("登录的结果为: {}".format(response.json()))
def test02_login_success(self): """登录成功""" #发送登录请求 response = self.login_api.login(self.session, self.phone, 'test123') logging.info("login response={}".format(response.json())) #断言 assert_utils(self, response, 200, 200, "登录成功")
def test11_login_password_is_wrong(self): #1、输入错误密码,提示错误1次 #定义参数 #调用接口类中的接口 response = self.login_api.login(self.session, keywords=self.phone2, password="******") logging.info( "--------------------------------get sms login response={}".format( response.json())) #接收接口返回的结果,并进行断言 assert_utils(self, response, 200, 100, "密码错误1次,达到3次将锁定账户") #2、输入错误密码,提示错误2次 #定义参数 #调用接口类中的接口 response = self.login_api.login(self.session, keywords=self.phone2, password="******") logging.info( "--------------------------------get login response={}".format( response.json())) #接收接口返回的结果,并进行断言 assert_utils(self, response, 200, 100, "密码错误2次,达到3次将锁定账户") #3、输入错误密码,提示被锁定 #定义参数 #调用接口类中的接口 response = self.login_api.login(self.session, keywords=self.phone2, password="******") logging.info( "--------------------------------get sms code response={}".format( response.json())) #接收接口返回的结果,并进行断言 assert_utils(self, response, 200, 100, "由于连续输入错误密码达到上限,账号已被锁定,请于1.0分钟后重新登录") #4、输入正确密码,提示被锁定 #定义参数 #调用接口类中的接口 response = self.login_api.login(self.session, keywords=self.phone2, password="******") logging.info( "--------------------------------get login response={}".format( response.json())) #接收接口返回的结果,并进行断言 assert_utils(self, response, 200, 100, "由于连续输入错误密码达到上限,账号已被锁定,请于1.0分钟后重新登录") #5、等待60s,输入正确密码,提示登录成功 #定义参数 #调用接口类中的接口 time.sleep(60) response = self.login_api.login(self.session, keywords=self.phone2, password="******") logging.info( "--------------------------------get login response={}".format( response.json())) #接收接口返回的结果,并进行断言 assert_utils(self, response, 200, 200, "登录成功")
def test18_login_phone_not_exist(self): #准备参数 Wphone = '13000000000' #调用接口类中的发送登录的接口 response = self.login_api.login(self.session, Wphone, self.pwd) logging.info("login response = {}".format(response.json())) #对结果进行断言 assert_utils(self, response, 200, 100, "用户不存在")
def test17_login_success(self): #准备测试数据 phone = app.phone1 #调用API接口中的方法来发送请求,并接收响应 response = self.login_api.login(self.session,phone) logging.info("get login response = {}".format(response.json())) #针对收到的响应进行断言 assert_utils(self,response,200,200,'登录成功')
def test06_requests_params_is_empty(self): # 调用无参的登陆接口 response = self.login_api.login_params_is_null() # 打印数据 jsonData = response.json() logging.info("测试无参的用例返回的数据为: {}".format(jsonData)) # 断言 assert_utils(self, response, 200, False, 99999, "抱歉,系统繁忙,请稍后重试")
def test05_password_is_empty(self): # 调用登陆接口 response = self.login_api.login("13800000002", "") # 打印数据 jsonData = response.json() logging.info("测试密码为空用例返回的数据为: {}".format(jsonData)) # 断言 assert_utils(self, response, 200, False, 20001, "用户名或密码错误")
def test07_add_invalid_params(self): # 发送添加无效参数的登陆请求 response = self.login_api.login_invalid_params("13800000002", "123456", verfify="123456") logging.info("添加一个无效的参数: {}".format(response.json())) # 断言 assert_utils(self, response, 200, True, 10000, "操作成功")
def test18_login_fail_phone_is_not_exist(self): #准备测试数据 phone = "13098243242" #调用API接口中的方法来发送请求,并接收响应 response = self.login_api.login(self.session,phone) logging.info("get login response = {}".format(response.json())) #针对收到的响应进行断言 assert_utils(self,response,200,100,'用户不存在')
def test04_mobile_is_empty(self): # 调用登陆接口 response = self.login_api.login("", "error") # 打印数据 jsonData = response.json() logging.info("测试用户名为空用例返回的数据为: {}".format(jsonData)) # 断言 assert_utils(self, response, 200, False, 20001, "用户名或密码错误")
def test19_login_fail_pwd_is_null(self): #准备测试数据 phone = app.phone1 #调用API接口中的方法来发送请求,并接收响应 response = self.login_api.login(self.session,phone,'') logging.info("get login response = {}".format(response.json())) #针对收到的响应进行断言 assert_utils(self,response,200,100,'密码不能为空')