def runCases(): reader = Reader() writer = Writer() http = HTTP(writer) reader.open_excle('../lib/cases/HTTP接口用例.xls') writer.copy_open('../lib/cases/HTTP接口用例.xls', '../lib/results/result-HTTP接口用例.xls') sheetname = writer.get_sheets() sheetname = reader.get_sheets() for sheet in sheetname: # 设置当前读写都是当前sheet页面 reader.set_sheet(sheet) writer.set_sheet(sheet) # 默认都写在第7列 writer.clo = 7 # 遍历读取所有的sheet页面的内容 for i in range(reader.rows): line = reader.readine() # 如果第一列或者第二列有内容,就是分组信息,不运行 if len(line[0]) > 0 or len(line[1]) > 0: pass else: print(line) writer.row = i func = getfunc(line, http) lenargs = getargs(func) run(func, lenargs, line) writer.save_close()
def runCases(): global casepath, resultpath reader = Reader() writer = Writer() web = Web(writer) reader.open_excel(casepath) # 第一行 reader.readline() # 第二行 line = reader.readline() runtype = line[1] print(runtype) if runtype == 'WEB': obj = Web(writer) # if runtype == 'APP': # obj = APP(writer) if runtype == 'HTTP': obj = HTTP(writer) if runtype == 'SOAP': obj = SOAP(writer) writer.copy_open(casepath, resultpath) sheetname = reader.get_sheets() writer.set_sheet(sheetname[0]) writer.write(1, 3, str(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))) for sheet in sheetname: # 设置当前读写的sheet页面 reader.set_sheet(sheet) writer.set_sheet(sheet) # 默认写第7列 writer.clo = 7 for i in range(reader.rows): line = reader.readline() # 如果第一列或者第二列有内容,就是分组信息,不运行 if len(line[0]) > 0 or len(line[1]) > 0: pass else: logger.info(line) writer.row = i func = geffunc(line, obj) lenargs = getargs(func) run(func, lenargs, line) writer.set_sheet(sheetname[0]) writer.write(1, 4, str(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))) writer.save_close()
def runCase(): global casepath, resultpath r = Reader() w = Writer() r.open_excel(casepath) #打开表,默认为第一个sheet w.copy_open(casepath, resultpath) sheetname = r.get_sheets() #根据表格的配置,创建不同的对象,例如表中第2行第2个字段为WEB,即创建WEB()对象 way = r.getparameter('1', '1') if way == 'APP': obj = APP(None) elif way == 'HTTP': obj = HTTP(w) elif way == 'SOAP': obj = SOAP(w) elif way == 'WEB': obj = WEB() w.set_sheet(sheetname[0]) w.write(2, 3, str( datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))) # StartTime for sheet in sheetname: #设置读写都是当前的sheet页面 r.set_sheet(sheet) w.set_sheet(sheet) w.clo = 7 #写入的列数以固定,所以设置列数为第8列,!第一列为0 for i in range(r.rows): line = r.readline() w.row = i #读到第几行就写入第几行 print(line) if len(line[0]) > 0 or len(line[1]) > 0: continue else: # 接口类型设置2 func = get_func(obj, line) L = get_args(func) run(func, L, line) w.set_sheet(sheetname[0]) w.write(2, 4, str( datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))) #EndTime w.save_close()
config.get_config('./conf/conf.properties') logger.info(config.config) # 初始化数据库 mysql = Mysql() mysql.init_mysql('./conf/userinfo.sql') # 逐行读取excel reader = Reader() casename = 'Web' reader.open_excel('./lib/%s.xls' % casename) writer = Writer() writer.copy_open('./lib/%s.xls' % casename, './lib/result-%s.xls' % casename) sheetname = reader.get_sheets() writer.set_sheet(sheetname[0]) starttime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) writer.write(1, 3, starttime) reader.readline() casetype = reader.readline()[1] # 执行用例的关键字库对象 obj = None if casetype == 'HTTP' or casetype == '': # 执行http接口自动化 obj = HTTP(writer) elif casetype == 'SOAP': obj = SOAP(writer) elif casetype == 'WEB': obj = Web(writer) elif casetype == 'APP': obj = App(writer)
casetype = reader.readline()[1] obj = None # 执行用例的关键字对象 if casetype == 'HTTP': # 执行http接口自动化 obj = HTTP(writer) elif casetype == 'SOAP': obj = SOAP(writer) elif casetype == 'WEB': obj = Web(writer) elif casetype == 'APP': obj = App(writer) for sheet in sheetname: # 设置当前读取的sheet页面 reader.set_sheet(sheet) # 读到哪个sheet页写到哪里 writer.set_sheet(sheet) for i in range(reader.rows): line = reader.readline() # 读到哪一行写哪一行 obj.row = i if len(line[0]) > 0 or len(line[1]) > 0: # 分组信息,不用执行 pass else: print(line) # 执行用例 runcase(line, obj) writer.save_close() # print('我的第一个测试框架') # 读取配置文件信息