def countInfo(**kwargs): get_phone = getPhoneInfo(kwargs["devices"]) phone_name = get_phone["brand"] + "_" + get_phone["model"] + "_" + "android" + "_" + get_phone["release"] _info = {} step = "" # 操作步骤信息 check_step = "" # 检查点步骤信息 for case in kwargs["testCase"]: step = step + case["info"] + "\n" if type(kwargs["testCheck"]) == list: # 检查点为列表 for check in kwargs["testCheck"]: check_step = check_step + check["info"] + "\n" elif type(kwargs["testCheck"]) == dict: check_step = kwargs["testCheck"]["info"] else: print("获取检查点步骤数据错误,请检查") print(kwargs["testCheck"]) _info["step"] = step # 用例操作步骤 _info["checkStep"] = check_step # 用例检查点 if kwargs["result"]: _info["result"] = "通过" else: _info["result"] = "失败" # 用例接开关 _info["img"] = kwargs["logTest"].checkPointNG(driver=kwargs["driver"], caseName=kwargs["testInfo"][0]["title"], checkPoint=kwargs["caseName"]+"_"+kwargs["testInfo"][0].get("msg", "none")) _info["id"] = kwargs["testInfo"][0]["id"] # 用例id _info["title"] = kwargs["testInfo"][0]["title"] # 用例名称 _info["caseName"] = kwargs["caseName"] # 测试函数 _info["phoneName"] = phone_name # 手机名 _info["msg"] = kwargs["testInfo"][0].get("msg", "") # 备注 _info["info"] = kwargs["testInfo"][0]["info"] #前置条件 writeInfo(data=_info, path=PATH("../Log/info.pickle"))
def __init__(self, devices): get_phone = getPhoneInfo(devices) #获取手机信息 phone_name = get_phone["device"] + "_" + get_phone["UDID"] #定义手机名称 global logger, resultPath, logPath #申明全局变量 resultPath = PATH("../log") #获取log文件夹地址 logPath = os.path.join( resultPath, (phone_name + '_' + time.strftime('%Y%m%d%H%M%S', time.localtime()))) #定义当前用例执行的log的文件夹地址 if not os.path.exists(logPath): os.makedirs(logPath) #如果当前用例执行的log的文件夹地址 不存在,新建这个文件夹 self.checkNo = 0 #下面是初始化并建立log配置过程 self.logger = logging.getLogger() self.logger.setLevel(logging.INFO) #定义log输出形式filehandler和命名 fh = logging.FileHandler(os.path.join(logPath, "outPut.log")) #定义log实际打印的格式 日期 - 级别名 - log信息 formatter = logging.Formatter( '%(asctime)s - %(levelname)s - %(message)s') fh.setFormatter(formatter) self.logger.addHandler(fh)
def __init__(self, devices): get_phone = getPhoneInfo(devices) phone_name = get_phone["brand"] + "_" + get_phone["model"] + "_" + "android" + "_" + get_phone["release"] global logger, resultPath, logPath resultPath = PATH("../Log/") logPath = os.path.join(resultPath, (phone_name + "_" + time.strftime('%Y%m%d%H%M%S', time.localtime()))) if not os.path.exists(logPath): os.makedirs(logPath) self.checkNo = 0 self.logger = logging.getLogger() self.logger.setLevel(logging.INFO) # create handler,write log fh = logging.FileHandler(os.path.join(logPath, "outPut.log")) # Define the output format of formatter handler formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s') fh.setFormatter(formatter) self.logger.addHandler(fh) """logcat日志""" # 运行之前先清除log clear_cmd = 'adb -s ' + devices + ' logcat -c' subprocess.run(clear_cmd, shell=True) # 重新记录log crashPath = os.path.join(PATH("../Log/CrashInfo/Android/")) if not os.path.exists(crashPath): os.makedirs(crashPath) logcat_log = os.path.join(crashPath, "logcat.log") cmd_logcat = "adb -s " + devices + " logcat > %s" % (logcat_log) os.popen(cmd_logcat)
def statistics_result(**kwargs): countSum(kwargs["result"]) get_phone = getPhoneInfo(kwargs["devices"]) phone_name = get_phone["brand"] + "_" + get_phone["model"] + "_" + "android" + "_" + get_phone["release"] countInfo(result=kwargs["result"], testInfo=kwargs["testInfo"], caseName=kwargs["caseName"], phoneName=phone_name, driver=kwargs["driver"], logTest=kwargs["logTest"], devices=kwargs["devices"], testCase=kwargs["testCase"], testCheck=kwargs["testCheck"]) countSumDevices(kwargs["devices"], kwargs["result"], phone_name=phone_name)
def statistics_result(**kwargs): countSum(kwargs["result"]) get_phone = getPhoneInfo(kwargs["devices"]) phone_name = get_phone["brand"] + "_" + get_phone[ "model"] + "_" + "android" + "_" + get_phone["release"] countInfo(result=kwargs["result"], testInfo=kwargs["testInfo"], caseName=kwargs["caseName"], phoneName=phone_name, driver=kwargs["driver"], logTest=kwargs["logTest"], devices=kwargs["devices"], testCase=kwargs["testCase"], testCheck=kwargs["testCheck"]) countSumDevices(kwargs["devices"], kwargs["result"], phone_name=phone_name)
def __init__(self, devices): get_phone = getPhoneInfo(devices) phone_name = get_phone["brand"] + "_" + get_phone["model"] + "_" + "android" + "_" + get_phone["release"] global logger, resultPath, logPath resultPath = PATH("../log") logPath = os.path.join(resultPath, (phone_name + time.strftime('%Y%m%d%H%M%S', time.localtime()))) if not os.path.exists(logPath): os.makedirs(logPath) self.checkNo = 0 self.logger = logging.getLogger() self.logger.setLevel(logging.INFO) fh = logging.FileHandler(os.path.join(logPath, "outPut.log")) formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s') fh.setFormatter(formatter) self.logger.addHandler(fh)
def __init__(self, devices): get_phone = getPhoneInfo(devices) phone_name = get_phone["brand"] + "_" + get_phone["model"] + "_" + "android" + "_" + get_phone["release"] global logger, resultPath, logPath resultPath = PATH("../log") logPath = os.path.join(resultPath, (phone_name + time.strftime('%Y%m%d%H%M%S', time.localtime()))) if not os.path.exists(logPath): os.makedirs(logPath) self.checkNo = 0 self.logger = logging.getLogger() self.logger.setLevel(logging.INFO) # create handler,write log fh = logging.FileHandler(os.path.join(logPath, "outPut.log")) # Define the output format of formatter handler formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s') fh.setFormatter(formatter) self.logger.addHandler(fh)
def statistics_result(**kwargs): countSum(kwargs["result"]) print('Platform:', kwargs["platformName"]) if kwargs["platformName"] == 'android': print('Device:', kwargs["devices"]) get_phone = getPhoneInfo(kwargs["devices"]) phone_name = get_phone["brand"] + "_" + get_phone[ "model"] + "_" + "android" + "_" + get_phone["release"] countInfo(result=kwargs["result"], testInfo=kwargs["testInfo"], caseName=kwargs["caseName"], phoneName=phone_name, driver=kwargs["driver"], logTest=kwargs["logTest"], devices=kwargs["devices"], testCase=kwargs["testCase"], testCheck=kwargs["testCheck"]) countSumDevices(kwargs["devices"], kwargs["result"], phone_name=phone_name) elif kwargs["platformName"] == 'iOS': print('Device:', kwargs["devices"]) get_phone = get_ios_PhoneInfo(kwargs["devices"]) phone_name = get_phone["device"] + "_" + get_phone[ "release"] + "_" + "iOS" + "_" + get_phone["udid"] countInfo(result=kwargs["result"], testInfo=kwargs["testInfo"], caseName=kwargs["caseName"], phoneName=phone_name, driver=kwargs["driver"], logTest=kwargs["logTest"], devices=kwargs["devices"], testCase=kwargs["testCase"], testCheck=kwargs["testCheck"]) countSumDevices(kwargs["devices"], kwargs["result"], phone_name=phone_name)
def countInfo(**kwargs): get_phone = getPhoneInfo(kwargs["devices"]) phone_name = get_phone["brand"] + "_" + get_phone[ "model"] + "_" + "android" + "_" + get_phone["release"] info = {} if kwargs["result"]: info["result"] = "通过" else: info["result"] = "失败" info["img"] = kwargs["logTest"].checkPointNG( driver=kwargs["driver"], caseName=kwargs["testInfo"][0]["title"], checkPoint=kwargs["caseName"]) info["id"] = kwargs["testInfo"][0]["id"] info["title"] = kwargs["testInfo"][0]["title"] info["caseName"] = kwargs["caseName"] info["phoneName"] = phone_name print("--------- Element.INFO--------") print(info) writeInfo(data=info, path=PATH("../Log/info.pickle")) print(read(PATH("../Log/info.pickle")))
def statistics_result(**kwargs): countSum(kwargs["result"]) get_phone = getPhoneInfo(kwargs["devices"]) phone_name = get_phone["device"] + "_" + get_phone[ "UDID"] #这里Devices是软件代号,UDID是设备名 version = get_phone["internal_version"] print('********************************************') print(version) software_ID = get_phone["device"] countInfo(result=kwargs["result"], testInfo=kwargs["testInfo"], caseName=kwargs["caseName"], phoneName=phone_name, driver=kwargs["driver"], logTest=kwargs["logTest"], devices=kwargs["devices"], testCase=kwargs["testCase"], testCheck=kwargs["testCheck"]) countSumDevices(kwargs["devices"], kwargs["result"], phone_name=phone_name, version=version, software_ID=software_ID) #这里devices是设备名