Exemplo n.º 1
0
 def rootConfigURL(self):
     # 从主配置文件Config中获取URL
     conf1 = Config("URL")
     url = conf1.get_url_config("cms_new")
     return url
Exemplo n.º 2
0
 def rootChildConfigPath(self):
     # 从主配置文件中获取子配置文件路径
     conf2 = Config("ConfigKIDs")
     # 获取子文件路径
     confFile = conf2.get_configPath("new_cms_configs")
     return confFile
Exemplo n.º 3
0
 def get_configMongoDb(self):
     conf = Config('MongoDB')
     self.host = conf.get_mongodb("mongo_host")
     self.port = conf.get_mongodb("mongo_port")
     self.mongodb = conf.get_mongodb("mongo_db")
     self.mongo_mycol = conf.get_mongodb("mongo_mycol")
Exemplo n.º 4
0
 def rootChildConfigPath(self):
     # 从主配置文件中获取子配置文件路径
     conf2 = Config("ConfigKIDs")
     # 获取子文件路径
     confFile = conf2.get_configPath("markerting_points_configs")
     return confFile
Exemplo n.º 5
0
 def rootChildConfigPath(self):
     # 从主配置文件中获取子配置文件yaml信息
     Capp = Config("ConfigApp").get_configPath("C_app")
     Capp_path = SystemOs().sys_path(Capp)
     data = yamlUtil(Capp_path).get_yalm()
     return data
Exemplo n.º 6
0
 def rootChildConfigPath(self):
     config2 = Config("ConfigKIDs")
     confFile = config2.get_configPath("new_cms_configs")
     return confFile
Exemplo n.º 7
0
 def rootConfigURL(self):
     config1 = Config("URL")
     ncurl = config1.get_url_config("cms_new")
     return ncurl
Exemplo n.º 8
0
class TestCase(unittest.TestCase):
    """
    全局变量中将excel中首行标题提取:testdata2 , yaml数据返回结果:datainfo
    新脚本中配置新的excel需要改写内容如下 :对应新的配置文件信息
    global:全局变量
     file_path = SystemOs().sys_path(datainfo['file_path2'])
    testdata = xlsxoper(file_path).readerXLS_dict(datainfo['SheetName2'])[0]  # 数据用于ddt使用
    testdata2 = xlsxoper(file_path).readerXLS_dict(datainfo['SheetName2'])[1]  # 首行标题

    def:
    执行脚本对应的excel写入sheet
    xls = xlsxoper(file_path).writeXLS_dict(datas['caseNo'],column,str(responseData),datainfo['SheetName2'])

    """
    global log, file_path, datainfo, testdata2
    log = Log().logger()
    conf = Config("ConfigApi")
    keys = conf.parsing_config("public_data")
    public_data = SystemOs().sys_path(keys)  #通过主配置文件config获取主yaml配置文件路径-
    datainfo = yamlUtil(public_data).get_yalm()
    file_path = SystemOs().sys_path(datainfo['file_path2'])
    testdata = xlsxoper(file_path).readerXLS_dict(
        datainfo['SheetName2'])[0]  # 数据用于ddt使用
    testdata2 = xlsxoper(file_path).readerXLS_dict(
        datainfo['SheetName2'])[1]  # 首行标题

    #*testdata 只获取数据
    @data(*testdata)
    def test_01_demo(self, datas):
        """
        接口测试
        :param datas: 从yaml文件中获取excel路径,读取数据集,通过ddt形式
        """

        isSkip = datas['isSkip']  #获取excle中isSkip
        if isSkip == 'y':
            log.info("当isSkip==y跳过此条用例")
        else:
            #print("datas:",datas)
            webapp = datas['setApp']
            setApp = datainfo[webapp]  #获取excel中设备类型setApp是网页还是手机
            log.info('setApp: %s ', setApp)
            setpath = SystemOs().sys_path(
                setApp
            )  #获取yaml子配置文件路径信息如:C:/Users/vivid/PycharmProjects/untitled/DestroyerRobot/yaml_file/header_cms.yaml
            header = yamlUtil(setpath).get_yalm()  #获取header信息
            url = datainfo[datas['domain']] + datas['requestUrl']
            #"请求方式= %s",datas['method'],"请求参数= %s",datas['param'] "请求格式= %s",datas['paramType'],"请求头部信息= %s",header
            log.info("请求地址= %s ", url)
            # log.info("请求方式= %s",datas['method'])
            # log.info("请求格式= %s",datas['paramType'])
            # log.info("请求头部信息= %s",header)
            responseData = HttpClient().request(datas['method'], url,
                                                datas['paramType'],
                                                datas['param'], header)  #实际结果
            log.info("实际响应结果:%s", responseData)
            responseResult = CheckResult.check(responseData,
                                               datas["exceptResponse"])
            log.info("判断预期结果与实际结果是否一致:0 为 False 1 为 True = %s ",
                     responseResult)
            # 判断是否将token写入yaml对应的文件中
            stort_token(responseData, webapp, setpath, responseResult,
                        datas['istoken'], datainfo['token'],
                        datainfo['Authorization']).token()
            #查找CASE_trueResponse中value值对应excel的列位置
            column = testdata2.index(datainfo['CASE_trueResponse'])
            # 写入excel中
            log.info("将实际响应结果集数据写入excel中对应列")
            #写入excel数据必须是字符串,不能是dict
            xls = xlsxoper(file_path).writeXLS_dict(datas['caseNo'], column,
                                                    str(responseData),
                                                    datainfo['SheetName2'])
            time.sleep(1)
Exemplo n.º 9
0
 def rootConfigURL(self):
     # 从主配置文件Config中获取URL
     conf1 = Config("URL")
     url = conf1.get_url_config("marketing")
     return url