def registerConfig_save(self, param): '''会员注册配置保存''' try: url = "http://" + self.host + self.api["owner"][ "registerConfig_save"] for i in param: i["ifCheck"] = 0 i["ifView"] = 1 i["ifRequired"] = 1 Pylog.debug("【会员注册配置保存-request】" + str(param)) resp = requests.post(url=url, headers=self.headers, data=json.dumps(param), timeout=15) Pylog.debug("【会员注册配置保存-resp】" + str(resp.text)) for i in param: i.pop("version") i.pop("ifDel") i.pop("createUser") i.pop("createTime") i.pop("modifyUser") i.pop("modifyTime") globalvars.set_value("regconfig", param) return resp.text except Exception: Pylog.error("【会员注册配置保存错误】:" + Pylog.exinfo()) return "会员注册配置保存错误"
def do_randombet(self, lotteryid, datas, betAmount): '''投注''' successlist = [] payoffAmount = 0 try: pdata = self.getCurrentCode(lotteryid) pdate = pdata[0] pcode = pdata[1] for k, v in datas.items(): dicts = {} dicts["play_id"] = k.split("|")[0] dicts["play_name"] = k.split("|")[1] dicts["content"] = v.split("|")[1] dicts["count"] = v.split("|")[0] # 兼容clion接口问题 if int(dicts["count"]) == 0: dicts["count"] = 1 dicts["content"] = dicts["play_name"].split("-")[1] # 替换model内容 bet_data = self.config.model("member", "betinfo.json") bet_data["pcode"] = str(pcode) bet_data["pdate"] = str(pdate) bet_data["lotteryId"] = lotteryid bet_data["list"][0]["playId"] = dicts["play_id"] bet_data["list"][0]["betContent"] = dicts["content"] bet_data["list"][0]["betCount"] = dicts["count"] bet_data["list"][0]["multiple"] = betAmount / 100 bet_data["amount"] = betAmount * int(dicts["count"]) bet_data["list"][0]["betAmount"] = bet_data["amount"] datas = json.dumps(bet_data) self.headers["Content-Type"] = "application/json; charset=UTF-8" Pylog.debug("【投注-request】lotteryID:{} |".format(str(lotteryid)) + str(datas)) resp = requests.post(url="http://" + self.host + self.api["member"]["bet"], data=datas, headers=self.headers, timeout=5) # Pylog.debug("【投注-resp】lotteryID:{} |".format(str(lotteryid)) + resp.text) respdata = json.loads(resp.text) Pylog.debug( "【" + dicts["play_name"] + "】 " + str(resp.status_code) + "|" + str(respdata)) if "orderId" in resp.text: if len(respdata["data"]["orderId"]) > 0: successlist.append(dicts["play_name"]) # 秒秒彩派彩计算 if lotteryid in [116, 118]: for i in respdata["data"]["listOrder"]: payoffAmount = payoffAmount + i["payoff"] globalvars.set_value("payoffAmount_"+str(lotteryid), payoffAmount) Pylog.info("【成功投注{}注,金额{}】{}".format(str(len(successlist)), str(betAmount), str(successlist))) return successlist except Exception: Pylog.error("【投注错误】:" + Pylog.exinfo()) return "投注错误"
def test_03_业主app地址设定(self): Pylog.info("TestCase---------------test_03_业主app地址设定") # 查询app地址 tmp = self.paramConfig.appConfig_view() self.assertIsNotNone(tmp) json_dict = json.loads(tmp) param = json_dict['data'] # 保存查询到的app地址 globalvars.set_value("appUrl", json_dict['data']['url']) # 设置app地址 results = self.paramConfig.appConfig_save(param) # 断言 self.assertIn("SUCCESS", results)
def test_02_业主客服设定(self): Pylog.info("TestCase---------------test_02_业主客服设定") # 查询客服地址 tmp = self.paramConfig.custConfig_view() self.assertIsNotNone(tmp) json_dict = json.loads(tmp) param = json_dict['data'] # 保存查询到的客服地址 globalvars.set_value("h5CustUrl", json_dict['data']['h5CustUrl']) # 设置客服地址 results = self.paramConfig.custConfig_save(param) # 断言 self.assertIn("SUCCESS", results)
def setUpClass(cls): Pylog.info("***************开始执行用例(member)***************") cls.config = globalvars.config() cls.loId_list = cls.config.model("member", "lotteryId.json") Authors("owner") cls.payment = Payment() cls.paramconfig = ParamConfig() cls.uaa = Uaa() cls.memberbet = MemberBet() cls.content = Content() cls.member = MemberAction() cls.membername = "cs_05" globalvars.set_value("membername", cls.membername)
def test_03_业主层级绑定出入款优惠设定(self): Pylog.info("TestCase---------------test_03_业主层级绑定出入款优惠设定") # 查询会员层级 results = self.uaa.member_info(self.membername) self.assertIn(self.membername, results) levelName = json.loads(results)["data"]["levelName"] levelId = json.loads(results)["data"]["levelId"] globalvars.set_value("member_level", { "id": levelId, "value": levelName }) # 更改层级绑定出入款优惠设定 results = self.uaa.level_bind_acced( levelName, "auto出入款优惠vct", globalvars.get_value("accessDiscount_id")) self.assertIn("SUCCESS", results)
def test_01_业主彩种排序设定(self): Pylog.info("TestCase---------------test_01_业主彩种排序设定") # 查询彩种排序信息 tmp = self.paramConfig.lotteryWeight_list() self.assertIsNotNone(tmp) json_dict = json.loads(tmp) param = json_dict['data']['rows'][0] # 保存查询到的信息 globalvars.set_value("aliasName", json_dict['data']['rows'][0]['aliasName']) globalvars.set_value("weight", json_dict['data']['rows'][0]['weight']) globalvars.set_value("imgUrl", json_dict['data']['rows'][0]['imgUrl']) # 设置“展示名称”、“权重”、“彩种图标” results = self.paramConfig.lotteryWeight_save(param) # 断言 self.assertIn("SUCCESS", results)
def test_12_业主微信钱包设定(self): Pylog.info("TestCase---------------test_12_业主微信钱包设定") # 查询微信钱包 tmp = self.content.copyright_list(type=3) self.assertIsNotNone(tmp) json_dict = json.loads(tmp) param = json_dict['data']['rows'][2] param['title'] = "自动化测试" param['content'] = "自动化测试" # 保存查询到的微信钱包 globalvars.set_value("AT03title", param['title']) globalvars.set_value("AT03content", param['content']) globalvars.set_value("AT03status", param['status']) # 设置微信钱包 results = self.content.copyright_save(param) # 断言 self.assertIn("SUCCESS", results)
def test_08_业主充值教程设定(self): Pylog.info("TestCase---------------test_08_业主充值教程设定") # 查询充值教程 tmp = self.content.copyright_list(type=1) self.assertIsNotNone(tmp) json_dict = json.loads(tmp) param = json_dict['data']['rows'][4] param['title'] = "自动化测试" param['content'] = "自动化测试" # 保存查询到的充值教程 globalvars.set_value("BT05title", param['title']) globalvars.set_value("BT05content", param['content']) globalvars.set_value("BT05status", param['status']) # 设置充值教程 results = self.content.copyright_save(param) # 断言 self.assertIn("SUCCESS", results)
def test_02_业主出入款优惠设定_新增(self): Pylog.info("TestCase---------------test_02_业主出入款优惠设定_新增") results = self.paramConfig.accessDiscount_create("auto出入款优惠vct") self.assertIn("SUCCESS", results) cid = json.loads(results)["data"] globalvars.set_value("accessDiscount_id", cid)
def setUpClass(cls): Pylog.info("***************开始执行用例(CmsProcess)***************") cls.auth = Authors(types="member") cls.config = globalvars.config() cls.paramConfig = paramConfig.ParamConfig() cls.content = content.Content() cls.memberaction = MemberAction() cls.uaa = uaa.Uaa() cls.payment = payment.Payment() cls.membername = globalvars.get_value("membername") owner = cls.config.owner #获取图片ID actTitlePic = cls.content.upLoadFile('activity.png') carouselTitlePic = cls.content.upLoadFile('carousel.png') site_iconUrl = cls.content.upLoadFile('H5siteicon.png') site_logoUrl = cls.content.upLoadFile('H5sitelogo.png') site_h5LogoUrl = cls.content.upLoadFile('H5loginlogo.png') #优惠活动参数 globalvars.set_value( "actParam", { "title": "自动化测试", "weight": "1", "titlePic": actTitlePic, "content": "<p>自动化测试</p>", "beginTime": 1523894400000, "endTime": 1523980799000 }) globalvars.set_value("actTitle", globalvars.get_value("actParam")['title']) globalvars.set_value("actTitlePic", globalvars.get_value("actParam")['titlePic']) globalvars.set_value("actContent", globalvars.get_value("actParam")['content']) globalvars.set_value("actWeight", globalvars.get_value("actParam")['weight']) #轮播图参数 globalvars.set_value( "carouselParam", { "beginTime": 1523894400000, "delayTime": "1", "endTime": 1523980799000, "itemPO": [{ "link": "http://www.baidu.com", "titlePic": carouselTitlePic }, { "link": "", "titlePic": "" }], "title": "自动化测试" }) globalvars.set_value("carouselTitle", globalvars.get_value("carouselParam")['title']) globalvars.set_value( "carouselTitlePic", globalvars.get_value("carouselParam")['itemPO'][0]['titlePic']) globalvars.set_value( "carouselDelayTime", globalvars.get_value("carouselParam")['delayTime']) globalvars.set_value( "carouselLink", globalvars.get_value("carouselParam")['itemPO'][0]['link']) #站点信息参数 # 查询站点信息 cls.content.site_view() globalvars.set_value( "siteParam", { "cid": globalvars.get_value("site_cid"), "platId": owner["env"]["platId"], "iconUrl": site_iconUrl, "logoUrl": site_logoUrl, "status": 1, "h5Name": "自动化测试站点名称", "h5SiteUrl": "", "h5LogoUrl": site_h5LogoUrl }) globalvars.set_value("site_h5Name", globalvars.get_value("siteParam")['h5Name']) globalvars.set_value("site_iconUrl", site_iconUrl) globalvars.set_value("site_logoUrl", site_logoUrl) globalvars.set_value("site_h5LogoUrl", site_h5LogoUrl)
# coding:utf-8 import unittest import time import sys import xmlrunner from utils import HTMLTestReportCN from utils.pylog import Pylog from config import globalvars from auth.authors import Authors from suite.process import regProcess, chgoffProcess, chgonProcess, chgsysProcess, drawProcess, betProcess, cmsProcess, \ ctconfigProcess params = sys.argv globalvars._init() if len(params) > 1: globalvars.set_value("membername", params[1]) # globalvars.set_value("membername", "ddee3") Pylog() pdate = time.strftime("%Y%m%d", time.gmtime()) globalvars.set_value("pdate", pdate) Authors("owner") Authors("control") suite = unittest.TestSuite() # suite.addTest(unittest.makeSuite(regProcess.RegProcess)) # suite.addTest(unittest.makeSuite(chgoffProcess.ChgoffProcess)) # suite.addTest(unittest.makeSuite(chgonProcess.ChgonProcess)) # suite.addTest(unittest.makeSuite(chgsysProcess.ChgsysProcess)) # suite.addTest(unittest.makeSuite(drawProcess.DrawProcess)) # suite.addTest(unittest.makeSuite(ctconfigProcess.CtconfigProcess)) # suite.addTest(unittest.makeSuite(betProcess.BetProcess))
def __init__(self, types="owner"): config = globalvars.config() headers = { "Accept": "application/json", "Content-Type": "application/json; charset=UTF-8", "X-Requested-With": "XMLHttpRequest", "clientId": "BH80xYtfSel9Yr2p_1uQKi8N7Fg8mBVhlCqJROWL", "Authorization": "Basic d2ViX2FwcDo=" } control_host = config.owner["env"]["host_ct"] control_api_login = config.api["control"]["login"] control_origin = config.owner["env"]["origin_ct"] control_model_login = config.model("control", "login.json") owner_origin = config.owner["env"]["origin_yz"] owner_host = config.owner["env"]["host_yz"] owner_api_login = config.api["owner"]["login"] owner_model_login = config.model("owner", "login.json") member_orgin = config.owner["env"]["origin_mb"] member_host = config.owner["env"]["host_mb"] member_api_login = config.api["member"]["login"] member_model_login = config.model("member", "login.json") if types == "control": url_login = "******" + control_host + control_api_login control_model_login["username"] = "******" headers.update({"Origin": control_origin}) Pylog.info( "【登陆鉴权" + types + "】 | " + control_model_login["username"] + " " + control_model_login["password"]) resp = requests.post(url=url_login, params=control_model_login, headers=headers, timeout = 5) Pylog.debug(resp.text) globalvars.set_value("headers_control", headers) elif types == "owner": url_login = "******" + owner_host + owner_api_login owner_model_login["username"] = "******" headers.update({"Origin": owner_origin}) Pylog.info("【登陆鉴权" + types + "】 | " + owner_model_login["username"] + " " + owner_model_login["password"]) resp = requests.post(url=url_login, params=owner_model_login, headers=headers, timeout=5) Pylog.debug(resp.text) globalvars.set_value("headers_owner", headers) else: url_login = "******" + member_host + member_api_login member_model_login["username"] = "******" headers.update({"Content-Type": "application/x-www-form-urlencoded", "Origin": member_orgin}) Pylog.info("【登陆鉴权" + types + "】 | " + member_model_login["username"] + " " + member_model_login["password"]) resp = requests.post(url=url_login, data=member_model_login, headers=headers, timeout=5) Pylog.debug(resp.text) globalvars.set_value("headers_member", headers) try: resp = json.loads(resp.content)["data"] Pylog.debug("【获取token】:" + resp["token_type"] + " " + resp["access_token"]) headers["Authorization"] = str(resp["token_type"]) + " " + str(resp["access_token"]) except Exception: Pylog.error("【登陆错误】:" + Pylog.exinfo()) headers["Content-Type"] = 'application/json; charset=UTF-8'