class test_login(unittest.TestCase): '''登录页''' #装载测试数据 execlName=os.path.join(getcwd.get_cwd(),"data\\KS_login_account.xlsx") caseData_excel = ExcelUtil(execlName, 'Sheet1') log.info('装载测试数据成功') #测试用例类级的方法,在所有测试用例执行之前执行 @classmethod def setUpClass(self): self.dr = PySelenium() self.page=pageElements(self.dr) self.page.open_browser() log.info('测试系统登录功能') #测试用例类级的方法,在所有测试用例执行完成后执行 @classmethod def tearDownClass(self): self.dr.quit() log.info('登录功能测试完成') def setUp(self): print('case_id: ',self.id(),'开始执行<br />') #固定格式,用于报表生成 self.page.winLocation() def tearDown(self): '''测试报错或者用例不通过则截图''' if not testPass(self): print('截图: ',self.dr.getScreenshot( self.id()),'<br />')#固定格式,用于报表生成 print('结束执行<br />')#固定格式,用于报表生成 @ddt.data(*caseData_excel.next()) def test_login(self,test_data): '''测试登录功能''' login_name=test_data['login_name'] #登录账号 password=test_data['password'] #密码 desc=test_data['desc'] #测试描述 print('测试用例描述:%s' %(desc)) print('账号:%s' %(login_name)) print('密码:%s' %(password)) self.page.input_login_name(login_name) self.page.input_password(password) self.page.input_verify_code() self.page.click_login_type() self.page.click_login_button() self.assertEqual(self.page.get_page_title(),'行业信息概览')
class person_approve(unittest.TestCase): '''人员审核''' @classmethod def setUpClass(self): self.dr = PySelenium() loginGo(self.dr).click_login()#登录系统 log.info('登录系统成功,开始测试...') @classmethod def tearDownClass(self): self.dr.quit() #关闭浏览器 log.info('测试完成,退出系统,关闭浏览器') def setUp(self): print('case_id: ',self.id(),'开始执行<br />') #固定格式,用于报表生成 def tearDown(self): '''测试报错或者用例不通过则截图''' if not testPass(self): print('截图: ',self.dr.getScreenshot( self.id()),'<br />')#固定格式,用于报表生成 print('结束执行<br />')#固定格式,用于报表生成 @unittest.Myskip def test_01_select_function(self): '''选择左边菜单功能''' self.page=leftPage(self.dr) #左边菜单元素 self.assertEqual('行业信息概览' ,self.page.get_page_title(),'页面标题不一致') self.page.go_approve_person() #点击左边菜单的 人员审核 globals()['login_name']=self.page.get_login_name() #登录用户名 globals()['node_name']=self.page.get_node_name() #登录用户所属机构名 self.dr.switchFrame(MAIN_IFRAME) #指向iframe页,中间数据展示位置 @unittest.skip('不执行退出功能') def test_99_exit(self): '''点击退出功能''' self.dr.switchFrameOut() #指向iframe上一级,左边菜单位置 self.page=leftPage(self.dr) #左边菜单元素 self.page.go_login_out() #退出登录 self.assertIn('登录' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_02_select_person(self): '''选择待审核人员列表中的第一个人员进行审核''' self.page=personHome(self.dr) #企业备案引导首页 元素 self.assertEqual('人员审核' ,self.page.get_page_title(),'页面标题不一致') self.dr.waitSleep(2) table_data=self.page.get_table_data() # 获取查询结果table内的所有数据 if int(len(table_data))<1: self.assertTrue(1==2,'人员审核未执行,没有发现待审核人员') for i in range(len(table_data)): if int(len(table_data[i])>1 ): person_name=table_data[i][0] phone_number=table_data[i][3] person_place=table_data[i][4] approve_type=table_data[i][8] self.page.select_approve_button(i) break '''填写审核信息''' self.dr.waitSleep(1) self.pageAp=personApprove(self.dr)#审核信息填写页面 self.assertEqual('审核' ,self.pageAp.get_page_title(),'页面标题不一致') self.pageAp.select_approve_pass() #选择审核通过 self.pageAp.select_approve_finish() #选择审核完成 #self.pageAp.select_approve_result('通过') #self.pageAp.select_processing_mode('审核完成') self.pageAp.input_approve_comments(rdData.getGBK2312(30)) #输入审核意见 self.pageAp.click_approve_button() #点击审核确认按钮 if self.pageAp.approve_success_name_is_enabled(): self.assertTrue(1==1,'人员审核成功') log.info("人员审核成功,操作员:%s,%s;审核信息:%s,%s,%s,%s" %(globals()['node_name'],globals()['login_name'],person_name,phone_number,person_place,approve_type)) else: self.assertTrue(1==2,"人员审核失败:%s"%self.pageAp.get_fail_text())
class TestSuite(unittest.TestCase): #装载测试数据 execlName = os.path.join(getcwd.get_cwd(), "data\\spider_house.xls") caseData_excel = ExcelUtil(execlName, 'spider_house') #打开execl文件 writer_table = ExcelAdd(execlName, sheet='spider_house') col_Num = writer_table.get_cols() #写入表头 writer_table.modify_cell(0, col_Num, 'gd_lon') writer_table.modify_cell(0, col_Num + 1, 'gd_lat') writer_table.modify_cell(0, col_Num + 2, 'distance') log.info('装载测试数据成功') @classmethod def setUpClass(self): self.dr = PySelenium() self.dr.openUrl('https://lbs.amap.com/console/show/picker') log.info('网约房爬虫数据坐标验证,以高德地图api查询结果为标准') @classmethod def tearDownClass(self): self.writer_table.save() #保存测试结果 self.dr.quit() #关闭浏览器 log.info('测试结束,关闭浏览器') def setUp(self): print('case_id: ', self.id(), '开始执行<br />') #固定格式,用于报表生成 self.dr.F5() def tearDown(self): '''测试报错或者用例不通过则截图''' if not func.testPass(self): print('截图: ', self.dr.getScreenshot(self.id()), '<br />') #固定格式,用于报表生成 print('结束执行<br />') #固定格式,用于报表生成 @ddt.data(*caseData_excel.next()) def test_case(self, data_): #接收测试数据 cur_row = data_['curRow'] lon = str(data_['lon']) lat = str(data_['lat']) address = str(data_['address']) #页面元素封装 txtSearch = 'id=>txtSearch' btnSearch = 'class=>btn-search' #divCoordinate='id=>divCoordinate' picker_copy = 'class=>picker-copy' #模拟查询操作 self.dr.inputText(txtSearch, address) #self.dr.clear(id_Coordinate) self.dr.click(btnSearch) self.dr.waitSleep(2) self.dr.click(picker_copy) coordinate = str(func.get_clipBoard_text()) func.set_clipBoard_text("b'0,0'") #coordinate=self.dr.getText(divCoordinate) gd_lon = coordinate[coordinate.find("'") + 1:coordinate.find(",")] gd_lat = coordinate[coordinate.find(",") + 1:len(coordinate) - 1] #print(lat, lon, gd_lat, gd_lon) distance = func.get_distance_hav(float(lat), float(lon), float(gd_lat), float(gd_lon)) * 1000 #断言,写入数据到execl文件 self.writer_table.modify_cell(cur_row, self.col_Num, gd_lon) self.writer_table.modify_cell(cur_row, self.col_Num + 1, gd_lat) self.writer_table.modify_cell(cur_row, self.col_Num + 2, distance)
class Industry_Search(unittest.TestCase): '''企业注销''' #装载测试数据 execlName = os.path.join(getcwd.get_cwd(), "data\\place_logout_data.xlsx") caseData_excel = ExcelUtil(execlName, 'Sheet1') log.info('装载测试数据成功') @classmethod def setUpClass(self): self.dr = PySelenium() loginGo(self.dr).click_login() #登录系统 self.menu_page = leftPage(self.dr) #左边菜单元素 globals()['login_name'] = self.menu_page.get_login_name() #登录用户名 globals()['node_name'] = self.menu_page.get_node_name() #登录用户所属机构名 log.info('登录系统成功,开始测试...') @classmethod def tearDownClass(self): #self.page.set_iframe_out() #指向iframe上一级,左边菜单位置 #self.menu_page.go_login_out() #退出登录 self.dr.quit() #关闭浏览器 log.info('测试完成,退出系统,关闭浏览器') def setUp(self): print('case_id: ', self.id(), '开始执行<br />') #固定格式,用于报表生成 self.menu_page.go_place_logout() #点击菜单到 企业注销 功能链接 self.dr.switchFrame(MAIN_IFRAME) #指向iframe页,中间数据展示位置 def tearDown(self): '''测试报错或者用例不通过则截图''' if not testPass(self): print('截图: ', self.dr.getScreenshot(self.id()), '<br />') #固定格式,用于报表生成 print('结束执行<br />') #固定格式,用于报表生成 self.dr.switchFrameOut() #指向iframe上一级,左边菜单位置 @ddt.data(*caseData_excel.next()) def test_index(self, test_data): self.page = centerPage(self.dr) '''企业查询''' search_dict = { 'place_name': test_data['place_name'].strip(), #企业名称 'industry_name': test_data['industry_name'].strip(), #所属行业 'region_name': test_data['region_name'].strip(), #管辖机构 'place_code': test_data['place_name'].strip(), #统一社会信用代码/注册号 #'region_police':test_data['region_police'].strip(), #责任民警 'person_name': test_data['person_name'].strip(), #法人姓名 #'person_id_card':test_data['person_id_card'].strip(), #法人证件号码 'place_type': test_data['place_type'].strip(), #企业类型 'operating_state': test_data['operating_state'].strip(), #营业状态 #'opening_date_from':test_data['opening_date_from'].strip(), #开业时间-开始 #'opening_date_to':test_data['opening_date_to'].strip() #开业时间-结束 } print('查询条件:', search_dict) self.page.input_place_name(search_dict['place_name']) #输入企业名称 self.page.select_industry(search_dict['industry_name']) #所属行业 if search_dict['region_name'] != '': self.page.select_region_first_name( search_dict['region_name']) #管辖机构 #self.page.input_region_police(search_dict['region_police']) #责任民警/编号 self.page.input_person_name(search_dict['person_name']) #法人姓名 #self.page.input_person_id_card(search_dict['person_id_card'])#法人身份证 self.page.select_input_place_type(search_dict['place_type']) #企业类型 self.page.select_operating_state(search_dict['operating_state']) #经营状态 #self.page.input_opening_date_from(search_dict['opening_date_from']) #开业时间-开始 #self.page.input_opening_date_to(search_dict['opening_date_to'])#开业时间-结束 self.page.click_search_button() self.dr.waitSleep(2) '''断言查询结果: 1、只验证查询结果第一页数据,只对有查询结果的数据进行准确性验证 2、根据显示数据,只做部分查询条件验证: 场所名称、所属行业、企业法人、企业类型、经营状态、统一社会信用代码/注册号 3、其他查询条件犹豫没有对应结果显示在页面,暂时无法验证 4、查询结果中只要有一条数据验证失败,则这条case不通过,只有全部数据验证通过,这条case才通过 5、这里只验证查询出来的数据是否正确,没有查询到数据的情况无法验证是否正确 ''' if search_dict['place_name']=='' and search_dict['industry_name']=='' and search_dict['person_name']=='' \ and search_dict['place_type']=='所有' and search_dict['region_name']=='' and search_dict['operating_state']=='所有' \ and search_dict['place_code']=='' : self.assertTrue( 1 == 2, '查询条件(场所名称、所属行业、企业法人、企业类型、管辖机构、经营状态、统一社会信用代码/注册号)为空,不做注销操作!') table_data = self.page.get_table_data() # 获取查询结果table内的所有数据 #print(len(table_data),table_data) okFlag = -1 for i in range(len(table_data)): #print(search_dict['place_name'],industry_name,': ',table_data[i]) if int(len(table_data[i]) > 1): okFlag = 0 if (table_data[i][0].lower().find(search_dict['place_name'].lower()) != -1 and len(search_dict['place_name']) >0) \ or ( table_data[i][7].lower() == search_dict['place_code'].lower() and search_dict['place_code']!=''):#验证输入了企业名称时,查询结果企业名称(或者统一社会信用代码/注册号)包含输入的企业名称信息 okFlag = 1 if search_dict['industry_name'].lower().find( table_data[i][1].lower()) != -1 and len( search_dict['industry_name'] ) > 0: #验证输入了所属行业时,查询结果包含输入的所属行业信息 okFlag = 1 if table_data[i][2].lower().find( search_dict['person_name'].lower()) != -1 and len( search_dict['person_name'] ) > 0: #验证输入了企业法人时,查询结果包含输入的企业法人信息 okFlag = 1 if search_dict['place_type'] == table_data[i][ 3] and search_dict[ 'place_type'] != '所有': #验证输入了企业类型时,查询结果等于输入的企业类型信息 okFlag = 1 if search_dict['operating_state'] == table_data[i][ 3] and search_dict[ 'operating_state'] != '所有': #验证输入了经营状态时,查询结果等于输入的经营状态信息 okFlag = 1 if table_data[i][7].lower().find( search_dict['region_name'].lower() ) != -1 and search_dict[ 'region_name'] != '': #验证输入了管辖机构时,查询结果包含输入的管辖机构信息,不包含该管辖机构的下属机构 okFlag = 1 if okFlag == 0: self.assertTrue(1 == 2, '查询结果验证有错!' + str(table_data[i])) if okFlag == -1: self.assertTrue(1 == 2, '查询结果为空,不做注销操作!') #注销,只注销列表的第一条数据 for i in range(len(table_data)): if int(len(table_data[i]) > 1): self.page.select_logout_button(i) #选择点击注销按钮 self.page.input_contents( 'Auto logout by automated tester') #选择点击注销按钮 self.page.select_logout_type() #注销类型 #self.page.click_confirm_button()#点击注销确认按钮 if self.page.logout_success_name_is_enabled(): self.assertTrue(1 == 1, '企业注销成功') log.info("企业注销成功,操作员:%s,%s;注销信息:%s,%s,%s,%s" % (globals()['node_name'], globals()['login_name'], table_data[i][0], table_data[i][2], table_data[i][3], table_data[i][4])) else: self.assertTrue(1 == 2, "企业注销失败:%s" % self.page.get_fail_text()) break
class test_index(unittest.TestCase): '''首页左边菜单功能验证''' @classmethod def setUpClass(self): self.dr = PySelenium() self.page=leftPage(self.dr) log.info('测试主页菜单链接功能') @classmethod def tearDownClass(self): self.dr.quit() log.info('主页菜单链接功能测试完成') def setUp(self): print('case_id: ',self.id(),'开始执行<br />') #固定格式,用于报表生成 def tearDown(self): '''测试报错或者用例不通过则截图''' if not testPass(self): print('截图: ',self.dr.getScreenshot( self.id()),'<br />')#固定格式,用于报表生成 print('结束执行<br />')#固定格式,用于报表生成 def test_01_login(self): '''登录系统''' loginGo(self.dr).click_login() self.assertEqual('行业信息概览' ,self.page.get_page_title(),'登录失败') @unittest.Myskip def test_998_option_link(self): '''测试修改密码链接功能''' self.page.go_modify_password() self.assertEqual('修改密码' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_999_option_link(self): '''测试退出系统功能''' self.page.go_login_out() self.assertIn('登录' ,self.page.get_page_title(),'退出系统失败') @unittest.Myskip def test_02_option_link(self): '''测试行业查询链接功能''' self.page.go_HYCX() self.assertEqual('行业查询' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_03_option_link(self): '''测试紧急情况保安调动链接功能''' self.page.go_JJQKBADD() self.dr.waitSleep(2) self.assertEqual('紧急情况保安调动' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_04_option_link(self): '''测试警保联动历史记录链接功能''' self.page.go_JBLDLSJL() self.assertEqual('警保联动历史记录' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_05_option_link(self): '''测试保安行业统计链接功能''' self.page.go_BAHYTJ() self.assertEqual('保安行业统计' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_06_option_link(self): '''测试单位新增链接功能''' self.page.go_DWXZ() self.assertEqual('新增单位备案' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_07_option_link(self): '''测试单位修改链接功能''' self.page.go_DWXG() self.assertEqual('单位备案变更' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_08_option_link(self): '''测试单位注销链接功能''' self.page.go_DWZX() self.assertEqual('单位备案注销' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_09_option_link(self): '''测试人员查询链接功能''' self.page.go_RYCX() self.assertEqual('人员查询' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_10_option_link(self): '''测试人员新增链接功能''' self.page.go_RYXZ() self.assertEqual('人员新增' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_11_option_link(self): '''测试人员修改链接功能''' self.page.go_RYXG() self.assertEqual('人员修改' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_12_option_link(self): '''测试人员注销链接功能''' self.page.go_RYZX() self.assertEqual('人员注销' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_13_option_link(self): '''测试单位检查链接功能''' self.page.go_DWJC() self.assertEqual('单位检查' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_14_option_link(self): '''测试单位检查统计链接功能''' self.page.go_JCTJ() self.assertEqual('单位检查统计' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_15_option_link(self): '''测试全警情报检索链接功能''' self.page.go_QJQBJS() self.assertEqual('全警情报检索' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_16_option_link(self): '''测试报警查询链接功能''' self.page.go_BJCX() self.assertEqual('报警查询' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_17_option_link(self): '''测试场所视频监控链接功能''' self.page.go_CSSPJK() self.assertEqual('场所视频监控' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_18_option_link(self): '''测试场所视频回放链接功能''' self.page.go_CSSPHF() self.assertEqual('场所视频回放' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_19_option_link(self): '''测试消息发布链接功能''' self.page.go_XXFB() self.assertEqual('消息发布' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_20_option_link(self): '''测试发布历史查询链接功能''' self.page.go_FBLSCX() self.assertEqual('信息发布历史查询' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_21_option_link(self): '''测试机构管理链接功能''' self.page.go_JGGL() self.assertEqual('机构管理' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_22_option_link(self): '''测试用户管理链接功能''' self.page.go_YHGL() self.assertEqual('用户管理' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_23_option_link(self): '''测试用户组管理链接功能''' self.page.go_YHZGL() self.assertEqual('用户组管理' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_24_option_link(self): '''测试用户分组管理链接功能''' self.page.go_YHFZGL() self.assertEqual('用户分组管理' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_25_option_link(self): '''测试打分表设置链接功能''' self.page.go_DFBSZ() self.assertEqual('打分表管理' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_26_option_link(self): '''测试数据字典链接功能''' self.page.go_SJZD() self.assertEqual('数据字典' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_27_option_link(self): '''测试参数设置链接功能''' self.page.go_CSSZ() self.assertEqual('参数设置' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_28_option_link(self): '''测试扩展数据字段链接功能''' self.page.go_KZSJZD() self.assertEqual('扩展数据字段' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_29_option_link(self): '''测试工作日志链接功能''' self.page.go_workLog() self.assertEqual('工作日志' ,self.page.get_page_title(),'页面标题不一致') @unittest.Myskip def test_30_option_link(self): '''测试操作日志链接功能''' self.page.go_operationLog() self.assertEqual('操作日志' ,self.page.get_page_title(),'页面标题不一致')
class Industry_Search(unittest.TestCase): '''从业人员查询''' #装载测试数据 execlName = os.path.join(getcwd.get_cwd(), "data\\person_query_data.xlsx") caseData_excel = ExcelUtil(execlName, 'Sheet1') log.info('装载测试数据成功') @classmethod def setUpClass(self): self.dr = PySelenium() loginGo(self.dr).click_login() #登录系统 self.menu_page = leftPage(self.dr) #左边菜单元素 globals()['login_name'] = self.menu_page.get_login_name() #登录用户名 globals()['node_name'] = self.menu_page.get_node_name() #登录用户所属机构名 log.info('登录系统成功,开始测试...') @classmethod def tearDownClass(self): #self.page.set_iframe_out() #指向iframe上一级,左边菜单位置 #self.menu_page.go_login_out() #退出登录 self.dr.quit() #关闭浏览器 log.info('测试完成,退出系统,关闭浏览器') def setUp(self): print('case_id: ', self.id(), '开始执行<br />') #固定格式,用于报表生成 self.menu_page.go_person_query() #点击菜单到 从业人员查询 功能链接 self.dr.switchFrame(MAIN_IFRAME) #指向iframe页,中间数据展示位置 def tearDown(self): '''测试报错或者用例不通过则截图''' if not testPass(self): print('截图: ', self.dr.getScreenshot(self.id()), '<br />') #固定格式,用于报表生成 print('结束执行<br />') #固定格式,用于报表生成 self.dr.switchFrameOut() #指向iframe上一级,左边菜单位置 @ddt.data(*caseData_excel.next()) def test_index(self, test_data): self.page = centerPage(self.dr) '''从业人员查询''' search_dict = { 'place_name': test_data['place_name'].strip(), #所属企业名称 'industry_name': test_data['industry_name'].strip(), #所属行业 'region_name': globals()['node_name'].strip(), #所属辖区 'person_name': test_data['person_name'].strip(), #从业人员姓名 'person_sex': test_data['person_sex'].strip(), #从业人员性别 'person_id_card': test_data['person_id_card'].strip(), #从业人员证件号码 'position_name': test_data['position_name'].strip(), #职位/工种 'apply_date_from': test_data['apply_date_from'].strip(), #备案时间-开始 'apply_date_to': test_data['apply_date_to'].strip() #备案时间-结束 } print('查询条件:', search_dict) self.page.input_place_name(search_dict['place_name']) #所属企业名称 self.page.select_industry(search_dict['industry_name']) #所属行业 #self.page.select_region_name(search_dict['region_name'])#所属辖区 self.page.input_person_name(search_dict['person_name']) #从业人员姓名 self.page.select_person_sex(search_dict['person_sex']) #从业人员性别 self.page.input_person_id_card( search_dict['person_id_card']) #从业人员证件号码 self.page.input_position_name(search_dict['position_name']) #职位/工种 self.page.input_apply_date_from( search_dict['apply_date_from']) #备案时间-开始 self.page.input_apply_date_to(search_dict['apply_date_to']) #备案时间-结束 self.page.click_search_button() self.dr.waitSleep(2) '''断言: 1、只验证查询结果第一页数据,只对有查询结果的数据进行准确性验证 2、根据显示数据,只做部分查询条件验证:所属企业,所属行业,人员姓名,性别,证件号码,职位/工种,备案时间 3、其他查询条件犹豫没有对应结果显示在页面,暂时无法验证 4、查询结果中只要有一条数据验证失败,则这条case不通过,只有全部数据验证通过,这条case才通过 5、这里只验证查询出来的数据是否正确,没有查询到数据的情况无法验证是否正确 ''' if search_dict['place_name']=='' and search_dict['industry_name']=='' and search_dict['person_name']=='' \ and search_dict['person_sex']=='' and search_dict['person_id_card']=='' and search_dict['position_name']=='' \ and search_dict['apply_date_from']=='' and search_dict['apply_date_to']=='': self.assertTrue(1 == 2, '验证条件(所属企业,所属行业,人员姓名,性别,证件号码,职位/工种,备案时间)为空,不做验证!') table_data = self.page.get_table_data() # 获取查询结果table内的所有数据 #print(len(table_data),table_data) okFlag = -1 for i in range(len(table_data)): #print(search_dict['place_name'],industry_name,': ',table_data[i]) if int(len(table_data[i]) > 1): okFlag = 0 if table_data[i][0].lower().find( search_dict['place_name'].lower()) != -1 and len( search_dict['place_name'] ) > 0: #验证输入了企业名称时,查询结果包含输入的企业名称信息 okFlag = 1 if search_dict['industry_name'].lower().find( table_data[i][1].lower()) != -1 and len( search_dict['industry_name'] ) > 0: #验证输入了所属行业时,查询结果包含输入的所属行业信息 okFlag = 1 if table_data[i][2].lower().find( search_dict['person_name'].lower()) != -1 and len( search_dict['person_name'] ) > 0: #验证输入了从业人员姓名时,查询结果包含输入的从业人员姓名信息 okFlag = 1 if search_dict['person_sex'].lower() == table_data[i][3].lower( ) and len(search_dict['person_sex'] ) > 0: #验证输入了从业人员性别时,查询结果等于输入的从业人员性别 okFlag = 1 if search_dict['person_id_card'].lower( ) == table_data[i][4].lower() and len( search_dict['person_id_card'] ) > 0: #验证输入了从业人员证件号码时,查询结果等于输入的从业人员证件号码 okFlag = 1 if table_data[i][5].lower().find( search_dict['position_name'].lower()) != -1 and len( search_dict['position_name'] ) > 0: #验证输入了职位/工种时,查询结果包含输入的职位/工种信息 okFlag = 1 if table_data[i][7].lower( ) >= search_dict['apply_date_from'].lower() and len( search_dict['apply_date_from'] ) > 0: #验证输入了备案开始时间时,查询结果》=备案开始时间 okFlag = 1 if table_data[i][7].lower( ) <= search_dict['apply_date_to'].lower() and len( search_dict['apply_date_to'] ) > 0: #验证输入了备案结束时间时,查询结果《=备案结束时间 okFlag = 1 if okFlag == 0: self.assertTrue(1 == 2, '查询结果验证有错!' + str(table_data[i])) if okFlag == -1: self.assertTrue(1 == 2, '查询结果为空,不做验证!') else: self.assertTrue(1 == 1, '首页查询结果验证正确!')