def getLoginState(url): s = requests.session() r = s.get(url, headers=json.loads(readConfig.ReadConfig().get_string( 'data', 'headers')), cookies=json.loads(readConfig.ReadConfig().get_string( 'data', 'cookies'))) return r
class test_hqQueryBalance(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' ''' def test_hq_query_balance(self): try: hq_query_balance_url = self.localReadConfig.get_string( 'url', 'hq_query_balance_url') last_url = self.base_url + hq_query_balance_url r = common.common.getLoginState(self.base_url + self.url) r = self.s.get(last_url, cookies=r.cookies) json_dict = json.loads(r.text) status_code = r.status_code if type(json_dict).__name__ == 'dict': self.assertTrue(status_code == 200) logs.Log.Log().getInstance(last_url + ' | GET | ' + str(status_code) + ' | ' + str(json_dict['return_msg'])) else: logs.Log.Log().getInstance(last_url + ' | ' + str(status_code)) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqCaptchaBuy(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' 验证码 ''' def test_hq_captcha_buy(self): try: hq_captcha_buy_url = self.localReadConfig.get_string('url','hq_captcha_buy_url') last_url = self.base_url + hq_captcha_buy_url r = common.common.getLoginState(self.base_url + self.url) r = self.s.post(last_url,json={"type": "confirm_pay", "order_no": "HQ2018080714220524302054"},cookies = r.cookies) json_dict = json.loads(r.text) status_code = r.status_code if type(json_dict).__name__ == 'dict': self.assertTrue(status_code == 200) logs.Log.Log().getInstance(last_url + ' | POST | ' + str(status_code) + ' | ' + str(json_dict['return_msg'])) else: logs.Log.Log().getInstance(last_url + ' | ' + str(status_code)) except Exception as ex : logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqMycoupon(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' 优惠券 ''' def test_hq_mycoupon(self): try: start_num = 1 end_num = 9 file_name = '..//testFile//mycoupon.xls' hq_mycoupon_url = self.localReadConfig.get_string( 'url', 'hq_mycoupon_url') last_url = self.base_url + hq_mycoupon_url r = common.common.getLoginState(self.base_url + self.url) xlsList = common.common.get_excel(start_num, end_num, file_name) if xlsList != []: for i in xlsList: r = self.s.get(last_url + i['CaseData'], cookies=r.cookies) status_code = r.status_code if 'Error' not in r.text: json_dict = json.loads(r.text) if type(json_dict).__name__ == 'dict': self.assertTrue(status_code == 200) logs.Log.Log().getInstance( last_url + i['CaseData'] + ' | GET | ' + str(status_code) + ' | return_code = ' + str(json_dict['return_code'])) common.common.modify_excel(int(i['CaseNO']), 'PASS', file_name) else: logs.Log.Log().getInstance(last_url + i['CaseData'] + ' | ' + str(status_code)) common.common.modify_excel(int(i['CaseNO']), 'FAIL', file_name) else: logs.Log.Log().getInstance(last_url + i['CaseData'] + ' | ' + str(status_code)) common.common.modify_excel(int(i['CaseNO']), 'FAIL', file_name) else: logs.Log.Log().getInstance(last_url + ' | not found case') except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqRealName(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' 实名认证 ''' def test_hq_real_name(self): try: start_num = 1 end_num = 6 file_name = '..//testFile//real_name.xls' hq_real_name_url = self.localReadConfig.get_string( 'url', 'hq_real_name_url') last_url = self.base_url + hq_real_name_url ''' 获取session信息 ''' r = common.common.getLoginState(self.base_url + self.url) xlsList = common.common.get_excel(start_num, end_num, file_name) if xlsList != []: for i in xlsList: r = self.s.post(last_url, json=json.loads(i["CaseData"]), cookies=r.cookies) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': logs.Log.Log().getInstance( last_url + ' | POST | ' + status_code + ' | ' + str(json_dict['return_msg'])) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + str(r.text)) else: logs.Log.Log().getInstance(last_url + ' | not found case') except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqLogin(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' 登录接口 ''' def test_hq_login(self): try: last_url = self.base_url + self.url r = self.s.post( last_url, # json={"mobile":"19994334819","password":"******","type":"password"} json={ "mobile": "18298380158", "password": "******", "type": "password" }) status_code = str(r.status_code) if 'status' in r.text: json_dict = json.loads(r.text) status = json_dict['status'] if type(json_dict).__name__ == 'dict': logs.Log.Log().getInstance(last_url + ' | POST | ' + status_code + ' | ' + str(json_dict['data'])) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + str(r.text)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqBannerProduct(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' banner 产品接口 ''' def test_hq_banner_product(self): try: hq_banner_product_url = self.localReadConfig.get_string( 'url', 'hq_banner_product_url') last_url = self.base_url + hq_banner_product_url # r = self.s.get( # self.base_url + self.url, # headers = json.loads(self.localReadConfig.get_string('data','headers')), # cookies = json.loads(self.localReadConfig.get_string('data','cookies')) # ) r = common.common.getLoginState(self.base_url + self.url) r = self.s.get(last_url, cookies=r.cookies) status_code = r.status_code json_dict = json.loads(r.text) if type(json_dict).__name__ == 'dict': self.assertTrue(status_code == 200) logs.Log.Log().getInstance( last_url + ' | GET | ' + str(status_code) + ' | ' + str(json_dict['return_msg']) + ' | ' + str(json_dict['data']['product_name'])) else: logs.Log.Log().getInstance(last_url + ' | ' + str(status_code)) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqDepositoryFlow(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() def test_hq_depository_flow(self): try: hq_depository_flow_url = self.localReadConfig.get_string( 'url', 'hq_depository_flow_url') last_url = self.base_url + hq_depository_flow_url r = common.common.getLoginState(self.base_url + self.url) jsonData = {} prdIdList = test_hqProductCunguan.test_hq_product_cunguan(self) if prdIdList != []: for prd_id in prdIdList: jsonData['prd_id'] = prd_id r = self.s.post(last_url, json=jsonData, cookies=r.cookies) json_dict = json.loads(r.text) status_code = r.status_code if type(json_dict).__name__ == 'dict': self.assertTrue(status_code == 200) logs.Log.Log().getInstance( last_url + ' | POST | ' + str(status_code) + ' | ' + str(json_dict['return_msg'])) else: logs.Log.Log().getInstance(last_url + ' | ' + str(status_code)) else: logs.Log.Log().getInstance(last_url + ' | prd_id is null') except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqToDepository(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' 存管 ''' def test_hq_to_depository(self): try: hq_to_depository_url = self.localReadConfig.get_string( 'url', 'hq_to_depository_url') last_url = self.base_url + hq_to_depository_url r = common.common.getLoginState(self.base_url + self.url) r = self.s.post( last_url, json={"back_url_address": "https://jr.huanqiu.com/h5/user/"}, cookies=r.cookies) json_dict = json.loads(r.text) status_code = r.status_code if type(json_dict).__name__ == 'dict': self.assertTrue(status_code == 200) logs.Log.Log().getInstance(last_url + ' | POST | ' + str(status_code) + ' | ' + str(json_dict['return_msg'])) else: logs.Log.Log().getInstance(last_url + ' | ' + str(status_code) + ' | ' + str(r.text)) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqPurchaseOrder(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' 订单确认 ''' def test_hq_purchase_order(self): try: hq_purchase_order_url = self.localReadConfig.get_string( 'url', 'hq_purchase_order_url') last_url = self.base_url + hq_purchase_order_url r = common.common.getLoginState(self.base_url + self.url) jsonData = { "prd_id": "170712110124850", "amount": "111.00", "user_continue": "B03" } r = self.s.post(last_url, json=jsonData, cookies=r.cookies) json_dict = json.loads(r.text) status_code = r.status_code if type(json_dict).__name__ == 'dict': self.assertTrue(status_code == 200) logs.Log.Log().getInstance(last_url + ' | POST | ' + str(status_code) + ' | ' + str(json_dict['return_msg'])) else: logs.Log.Log().getInstance(last_url + ' | ' + str(status_code)) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqProfile(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() headers = {'Content-Type': 'application/json;charset=UTF-8'} cookies = {'session': 'b39c525e282a41d59cc27eded1d3f18a'} url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' 个人中心 ''' def test_hq_profile(self): try: hq_profile_url = self.localReadConfig.get_string( 'url', 'hq_profile_url') last_url = self.base_url + hq_profile_url r = common.common.getLoginState(self.base_url + self.url) r = self.s.get(last_url, cookies=r.cookies) status_code = str(r.status_code) json_dict = json.loads(r.text) if type(json_dict).__name__ == 'dict': logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(json_dict['return_msg'])) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + str(r.text)) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqRecharge(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' 充值 ''' def test_hq_recharge(self): try: hq_recharge_url = self.localReadConfig.get_string('url','hq_recharge_url') last_url = self.base_url + hq_recharge_url # r = self.s.get( # self.base_url + self.url, # headers = self.headers, # cookies = self.cookies # ) r = common.common.getLoginState(self.base_url + self.url) r = self.s.get(last_url,cookies = r.cookies) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(json_dict['return_msg'])) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqTransferContractDetails(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' 玖富债权展示 ''' def test_hq_transfer_contract_details(self): try: hq_transfer_contract_details_url = self.localReadConfig.get_string( 'url', 'hq_transfer_contract_details_url') last_url = self.base_url + hq_transfer_contract_details_url r = common.common.getLoginState(self.base_url + self.url) jsonData = {"order_no": "HQ2018071511371679814032"} r = self.s.post(last_url, json=jsonData, cookies=r.cookies) status_code = r.status_code json_dict = json.loads(r.text) if type(json_dict).__name__ == 'dict': self.assertTrue(status_code == 200) logs.Log.Log().getInstance(last_url + ' | POST | ' + str(status_code) + ' | ' + str(json_dict['return_msg'])) else: logs.Log.Log().getInstance(last_url + ' | ' + str(status_code)) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
import requests from config import readConfig as readConfig import os from xlrd import open_workbook from xml.etree import ElementTree as ElementTree from lib import configHttp from lib import Log import json localReadConfig = readConfig.ReadConfig() proDir = readConfig.proDir[0:-6] localConfigHttp = configHttp.ConfigHttp() log = Log.MyLog().get_log() logger = log.get_logger() caseNo = 0 def show_return_msg(response): """ 显示返回的数据 """ url = response.url msg = response.text print("\n请求地址:" + url) print("\n请求返回值:" + '\n' + json.dumps( json.loads(msg), ensure_ascii=False, sort_key=True, indent=4)) #***************************************读取用例excel**************************************** def get_xls(xls_name, api_id, sheet_name='sheet'): """ 读取testcase excel """ cls = []
# -*- coding:utf-8 -*- import os import common.HTMLTestRunner as HTMLTestRunner import unittest from config import readConfig, getpathInfo from common import Log from common import configEmail send_mail = configEmail.send_email() path = getpathInfo.get_Path() report_path = os.path.join(path, 'result') on_off = readConfig.ReadConfig().get_email('on_off') log = Log.logger class AllTest: # 定义一个类AllTest def __init__(self): # 初始化一些参数和数据 global resultPath resultPath = os.path.join(report_path, "report.html") # result/report.html self.caseListFile = os.path.join(path, "caselist.txt") # 配置执行哪些测试文件的配置文件路径 self.caseFile = os.path.join(path, "testCase") # 真正的测试断言文件路径 self.caseList = [] log.info('resultPath' + resultPath) # 将resultPath的值输入到日志,方便定位查看问题 log.info('caseListFile' + self.caseListFile) # 同理 log.info('caseList' + str(self.caseList)) # 同理 def set_case_list(self): """
#!/usr/bin/env python # -*- coding: utf-8 -*- import re import requests import unittest import pytest from pprint import pprint from config import readConfig read_conf = readConfig.ReadConfig() host = read_conf.get_http_url('host') host_www = read_conf.get_http_url('host_www') host_comment = read_conf.get_http_url('host_comment') host_lite = read_conf.get_http_url('host_lite') host_lite_activity = read_conf.get_http_url('host_lite_activity') debug = read_conf.get_login_dreame_lite('debug') user = read_conf.get_login_dreame_lite('user') class Http_Req(unittest.TestCase): @pytest.mark.skip def http_old_req(self, url): self.s = requests.session() url_0 = host + url try: result_0 = self.s.get(url_0) t = result_0.json() print(t) self.assertEqual(0, t["status"], msg="Fail Detail")
# -*- coding:utf-8 -*- # @Time :2020/6/18 11:41 # @Author :chendaiwu_biubiubiu----- # @FileName :GetURLGarams.py # @Sofaware :PyCharm from config import readConfig # from logging import logger readconfig = readConfig.ReadConfig() class geturlgarams(): def get_url(self): new_url = readconfig.get_http('scheme') + '://' + readconfig.get_http( 'baseurl') + ':8888' + '/login' + '?' # logger.info('new_url':new_url) return new_url if __name__ == '__main__': print(geturlgarams().get_url())
class test_hqProductCunguan(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() def test_hq_product_cunguan(self): try: file_name = '..//testFile//product_cunguan.xls' start_num = 1 end_num = 9 prdIdList = [] hq_product_cunguan_url = self.localReadConfig.get_string( 'url', 'hq_product_cunguan_url') # r = self.s.get( # self.base_url + self.url, # headers = json.loads(self.localReadConfig.get_string('data','headers')), # cookies = json.loads(self.localReadConfig.get_string('data','cookies')) # ) r = common.common.getLoginState(self.base_url + self.url) xlsList = common.common.get_excel(start_num, end_num, file_name) if xlsList != []: for i in xlsList: last_url = self.base_url + hq_product_cunguan_url + str( i['CaseData']) r = self.s.get(last_url) status_code = r.status_code if 'invalid' not in r.text: json_dict = json.loads(r.text) if type(json_dict).__name__ == 'dict': if json_dict['data'].get('list') != []: for k in range( len(json_dict['data'].get('list'))): prdIdList.append(json_dict['data'].get( 'list')[k]['prd_id']) # elif json_dict['data'].get('total') > 0: # for j in range(json_dict['data'].get('total')): # prdIdList.append(json_dict['data'].get('list')[j]['prd_id']) prdIdList = sorted(set(prdIdList), key=prdIdList.index) self.assertTrue(status_code == 200) logs.Log.Log().getInstance( last_url + ' | GET | ' + str(status_code) + ' | return_code=' + str(json_dict['return_code'])) common.common.modify_excel(int(i['CaseNO']), 'PASS', file_name) else: logs.Log.Log().getInstance(last_url + ' | ' + str(status_code)) common.common.modify_excel(int(i['CaseNO']), 'FAIL', file_name) else: logs.Log.Log().getInstance(last_url + ' | ' + str(status_code)) common.common.modify_excel(int(i['CaseNO']), 'FAIL', file_name) else: logs.Log.Log().getInstance(hq_product_cunguan_url + ' | case not found!') return prdIdList except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_hqAssetInfo(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() def test_asset_info(self): try: start_num = 1 end_num = 8 file_name = '..//testFile//asset_info.xls' hq_asset_info_url = self.localReadConfig.get_string( 'url', 'hq_asset_info_url') last_url = self.base_url + hq_asset_info_url r = common.common.getLoginState(self.base_url + self.url) xlsList = common.common.get_excel(start_num, end_num, file_name) prdIdList = test_hqProductCunguan.test_hq_product_cunguan(self) if prdIdList != [] and xlsList != []: for prd_id in prdIdList: for i in xlsList: url = last_url + i['CaseData'] + '&prd_id=' + prd_id r = self.s.get(url, cookies=r.cookies) status_code = r.status_code if 'invalid' not in r.text: json_dict = json.loads(r.text) if type(json_dict).__name__ == 'dict': self.assertTrue(status_code == 200) logs.Log.Log().getInstance( last_url + i['CaseData'] + '&prd_id=' + prd_id + ' | GET | ' + str(status_code) + ' | return_code = ' + str(json_dict['return_code'])) common.common.modify_excel( int(i['CaseNO']), 'PASS', file_name) else: logs.Log.Log().getInstance(last_url + i['CaseData'] + '&prd_id=' + prd_id + ' | ' + str(status_code)) common.common.modify_excel( int(i['CaseNO']), 'FAIL', file_name) else: logs.Log.Log().getInstance(last_url + i['CaseData'] + '&prd_id=' + prd_id + ' | ' + str(status_code)) common.common.modify_excel(int(i['CaseNO']), 'FAIL', file_name) else: logs.Log.Log().getInstance(last_url + ' | no case and prd_id is null') except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
class test_UserSync(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() headers = {'Content-Type': 'application/json;charset=UTF-8'} cookies = { 'session': 'ce95395f3936432c83af5a41d1a8fb34', '__mt_client_id__': '1089867707', '__mt_access_token__': 'aI2-C4liGBugQDXmq691O4GPgAGXo7DuxA1VgRf6Z7qC2_0ODreyW4Szdz77-yAnu-vC9rJu95c6eQZgb-0Lf2dSyLsCqqGgjYMahp-U_vjOFn80zuxkUp9bKpNfIRmZxkyDI1GRiH-dW4Z7tp207bXI6izG6auOlPWKFjosfdY=' } url = localReadConfig.get_string("url", 'user_sync_url') base_url = localReadConfig.get_string('base_url', 'url') s = requests.session() def test_user_sync(self): try: last_url = self.base_url + self.url r = self.s.get(last_url, headers=self.headers, cookies=self.cookies) r.encoding = 'utf-8' json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_xls(self): try: product_url = self.localReadConfig.get_string('url', 'product_url') file_name = '..//testFile//test.xls' start_num = 1 end_num = 6 id_list = [] productIdList = [] r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) for i in common.common.get_excel(start_num, end_num, file_name): last_url = self.base_url + product_url + i['CaseData'] r = self.s.get(last_url) r.encoding = 'utf-8' status_code = str(r.status_code) r = r.text if 'status' in r: json_dict = json.loads(r) id_total = json_dict['data'].get('total') if id_total > 1: for j in range(id_total): p_id = json_dict['data'].get('list')[j]['id'] product_id = json_dict['data'].get( 'list')[j]['prdid'] id_list.append(p_id) productIdList.append(product_id) id_list = sorted(set(id_list), key=id_list.index) status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) common.common.modify_excel(int(i['CaseNO']), 'FAIL', file_name) else: logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) common.common.modify_excel(int(i['CaseNO']), 'FAIL', file_name) return id_list, productIdList except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_GetProductById(self): try: product_by_id_url = self.localReadConfig.get_string( 'url', 'product_by_id_url') for i in test_UserSync.test_xls(self): last_url = self.base_url + product_by_id_url + str(i) r = self.s.get(last_url) json_dict = json.loads(r.text) status = json_dict['status'] status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_profile(self): try: profile_url = self.localReadConfig.get_string('url', 'profile_url') last_url = self.base_url + profile_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) r.encoding = 'utf-8' json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_risk(self): try: risk_url = self.localReadConfig.get_string('url', 'risk_url') last_url = self.base_url + risk_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(ex) ''' 账户总览 ''' def test_account(self): try: account_url = self.localReadConfig.get_string('url', 'account_url') last_url = self.base_url + account_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status) + ' | ' + str(json_dict['data'])) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 交易记录 ''' def test_orders(self): try: orders_url = self.localReadConfig.get_string('url', 'orders_url') orderNoList = [] last_url = self.base_url + orders_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) for pid in test_UserSync.test_xls(self)[1]: r = self.s.get(last_url + pid) json_dict = json.loads(r.text) print(json_dict) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + pid + ' | GET | ' + status_code + ' | ' + str(status) + ' | ' + str(json_dict['data'])) id_total = json_dict['data'].get('total') if id_total > 1: for j in range(id_total): order_no = json_dict['data'].get( 'list')[j]['order_no'] orderNoList.append(order_no) else: logs.Log.Log().getInstance(last_url + pid + ' | GET | ' + status_code + ' | ' + str(status)) return orderNoList except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_query_bank_card_url(self): try: query_bank_card_url = self.localReadConfig.get_string( 'url', 'query_bank_card_url') last_url = self.base_url + query_bank_card_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + str(r.text)) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_query_risk_subject(self): try: query_risk_url = self.localReadConfig.get_string( 'url', 'query_risk_url') last_url = self.base_url + query_risk_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_couponlist(self): try: couponlist_url = self.localReadConfig.get_string( 'url', 'couponlist_url') last_url = self.base_url + couponlist_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_risk_flow(self): try: risk_flow_url = self.localReadConfig.get_string( 'url', 'risk_flow_url') last_url = self.base_url + risk_flow_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_common_problem(self): try: common_problem_url = self.localReadConfig.get_string( 'url', 'common_problem_url') last_url = self.base_url + common_problem_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_counponlist_unavailable(self): try: counponlist_un_url = self.localReadConfig.get_string( 'url', 'counponlist_un_url') last_url = self.base_url + counponlist_un_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 优惠券兑换码 ''' def test_verifyredeemcode(self): try: verifyredeemcode_url = self.localReadConfig.get_string( 'url', 'verifyredeemcode_url') last_url = self.base_url + verifyredeemcode_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.post(last_url, json={"redeem_code": "12asdfas34"}) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | POST | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 存管账户充值流程 ''' def test_recharge_flow(self): try: recharge_flow_url = self.localReadConfig.get_string( 'url', 'recharge_flow_url') last_url = self.base_url + recharge_flow_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 存管账户提现流程 ''' def test_withdraw_flow(self): try: withdraw_flow_url = self.localReadConfig.get_string( 'url', 'withdraw_flow_url') last_url = self.base_url + withdraw_flow_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 提现后的流程 ''' def test_query_bank_withdraw(self): try: query_bank_withdraw_url = self.localReadConfig.get_string( 'url', 'query_bank_withdraw_url') last_url = self.base_url + query_bank_withdraw_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 我的存管子账户余额查询 ''' def test_query_amount_balance(self): try: query_amount_balance_url = self.localReadConfig.get_string( 'url', 'query_amount_balance_url') last_url = self.base_url + query_amount_balance_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_is_realname(self): try: is_realname_url = self.localReadConfig.get_string( 'url', 'is_realname_url') last_url = self.base_url + is_realname_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 开通微支付绑卡 ''' def test_repayment_flow(self): try: repayment_flow_url = self.localReadConfig.get_string( 'url', 'repayment_flow_url') last_url = self.base_url + repayment_flow_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.post(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 绑定银行卡信息接口 ''' def test_query_persongold_account(self): try: query_persongold_account_url = self.localReadConfig.get_string( 'url', 'query_persongold_account_url') last_url = self.base_url + query_persongold_account_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) print(json_dict) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 购买成功状态显示接口 ''' def test_buy_result(self): try: buy_result_url = self.localReadConfig.get_string( 'url', 'buy_result_url') last_url = self.base_url + buy_result_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.post(last_url, json={"order_no": "MT2018031216055500817909"}) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | POST | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 合同查看接口 ''' def test_transfer_contract(self): try: transfer_contract_url = self.localReadConfig.get_string( 'url', 'transfer_contract_url') last_url = self.base_url + transfer_contract_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) jsonData = {} typelist = ['oc', 'ac', 'dc'] orderNolist = test_UserSync.test_orders_tender_record(self) for i in orderNolist: for j in typelist: jsonData['order_no'] = i jsonData['type'] = j r = self.s.post(last_url, json=jsonData) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | POST | ' + status_code + ' | ' + str(status) + ' | ' + json_dict['data']) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def test_regbank(self): try: regbank_url = self.localReadConfig.get_string('url', 'regbank_url') last_url = self.base_url + regbank_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = r.status_code if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 查询银行限额 ''' def test_bank_limit(self): try: bank_limit_url = self.localReadConfig.get_string( 'url', 'bank_limit_url') last_url = self.base_url + bank_limit_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(r.text)) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 债权记录接口 ''' def test_asset_info(self): try: asset_info_url = self.localReadConfig.get_string( 'url', 'asset_info_url') last_url = self.base_url + asset_info_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) #test_xls返回一个元祖,一个id,一个prdid。获取后取出来 productIdList = test_UserSync.test_xls(self)[1] for pid in productIdList: r = self.s.get(last_url + pid) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + pid + ' | GET | ' + status_code + ' | ' + str(status)) else: logs.Log.Log().getInstance(last_url + pid + ' | GET | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' ##风险测评等级对比 用户测评结果与产品测评不一致 status 2 测评结果一致 status 0 ''' def test_risk_contrast(self): try: risk_contrast_url = self.localReadConfig.get_string( 'url', 'risk_contrast_url') last_url = self.base_url + risk_contrast_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) jsonData = {} for pid in test_UserSync.test_xls(self)[1]: jsonData['prdid'] = pid r = self.s.post(last_url, json=jsonData) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status == 0 or status == 2) logs.Log.Log().getInstance(last_url + ' | POST | ' + status_code + ' | ' + str(status) + ' | ' + str(json_dict['data'])) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 判断录入用户手机号 已录入用户手机号 status 0 未录入手机号 status 1 用户查询失败 status 2 ''' def test_isMobile(self): try: isMobile_url = self.localReadConfig.get_string( 'url', 'isMobile_url') last_url = self.base_url + isMobile_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) status_code = str(r.status_code) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1, 2)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status) + ' | ' + str(json_dict['data'])) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) ''' 是否开通存管账户 ''' def test_isDepository(self): try: isDepository_url = self.localReadConfig.get_string( 'url', 'isDepository_url') last_url = self.base_url + isDepository_url r = self.s.get(self.base_url + self.url, headers=self.headers, cookies=self.cookies) r = self.s.get(last_url) json_dict = json.loads(r.text) print(json_dict) status_code = str(r.text) if type(json_dict).__name__ == 'dict': status = json_dict['status'] self.assertTrue(status in (0, 1)) logs.Log.Log().getInstance(last_url + ' | GET | ' + status_code + ' | ' + str(status) + ' | ' + str(json_dict['data'])) else: logs.Log.Log().getInstance(last_url + ' | ' + status_code + ' | ' + r.text) except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end start")
class test_hqProductRecord(unittest.TestCase): @classmethod def setUp(self): print("start test") localReadConfig = readConfig.ReadConfig() url = localReadConfig.get_string("url", 'hq_login_url') base_url = localReadConfig.get_string('base_url', 'hq_url') s = requests.session() ''' 产品详情 ''' def test_hq_product_record(self): try: start_num = 1 end_num = 10 file_name = '..//testFile//product_record.xls' hqOrderNOList = [] hq_product_record_url = self.localReadConfig.get_string( 'url', 'hq_product_record_url') last_url = self.base_url + hq_product_record_url # r = self.s.get( # self.base_url + self.url, # headers = json.loads(self.localReadConfig.get_string('data','headers')), # cookies = json.loads(self.localReadConfig.get_string('data','cookies')) # ) r = common.common.getLoginState(self.base_url + self.url) prdIdList = test_hqProductCunguan.test_hq_product_cunguan(self) xlsList = common.common.get_excel(start_num, end_num, file_name) if prdIdList != [] and xlsList != []: for i in xlsList: for prd_id in prdIdList: url = last_url + i['CaseData'] + '&prd_id=' + prd_id r = self.s.get(url) status_code = r.status_code if 'Error' not in r.text: json_dict = json.loads(r.text) if type(json_dict).__name__ == 'dict': if json_dict['data'].get('list') != []: for k in range( len(json_dict['data'].get( 'list'))): hqOrderNOList.append( json_dict['data'].get( 'list')[k]['order_no']) # elif json_dict['data'].get('total') > 0 : # for j in range(json_dict['data'].get('total')): # hqOrderNOList.append(json_dict['data'].get('list')[j]['order_no']) hqOrderNOList = sorted( set(hqOrderNOList), key=hqOrderNOList.index) self.assertTrue(status_code == 200) logs.Log.Log().getInstance( last_url + i['CaseData'] + '&prd_id=' + prd_id + ' | GET | ' + str(status_code) + ' | return_code = ' + str(json_dict['return_code'])) common.common.modify_excel( int(i['CaseNO']), 'PASS', file_name) else: logs.Log.Log().getInstance( last_url + i['CaseData'] + '&prd_id=' + prd_id + ' | ' + 'return order_no is null') common.common.modify_excel( int(i['CaseNO']), 'PASS', file_name) else: logs.Log.Log().getInstance(last_url + i['CaseData'] + '&prd_id=' + prd_id + ' | ' + str(status_code)) common.common.modify_excel( int(i['CaseNO']), 'FAIL', file_name) else: logs.Log.Log().getInstance(last_url + i['CaseData'] + '&prd_id=' + prd_id + ' | ' + str(status_code)) common.common.modify_excel(int(i['CaseNO']), 'FAIL', file_name) else: logs.Log.Log().getInstance( last_url + ' | not found case and prd_id is null') return hqOrderNOList except Exception as ex: logs.Log.Log().getInstance(str(ex)) def tearDown(self): print("end test")
# coning = utf-8 __author__ = 'Aimee' import pymysql import config.readConfig as conf from common import loger import json host = conf.ReadConfig().get_db('host') user = conf.ReadConfig().get_db('username') password = conf.ReadConfig().get_db('password') port = conf.ReadConfig().get_db('port') db = conf.ReadConfig().get_db('database') log = loger.Log() class DB(): def __init__(self): try: self.conn = pymysql.connect(host=str(host), user=user, port=int(port), password=password, database=db, charset='utf8') except Exception as e: log.error("数据库连接错误:出错是:%s" % e) #查询所有数据 def select(self, sql): cusor = self.conn.cursor() cusor.execute(sql)