class TestMerchantListClass(unittest.TestCase): # 创建测试类 @classmethod # 类方法,只执行一次,但必须要加注解@classmethod,且名字固定为setUpClass def setUpClass(cls): pass @classmethod # 类方法,只执行一次,但必须要加注解@classmethod,且名字固定为tearDownClass def tearDownClass(cls): pass def setUp(self): # 每条用例执行测试之前都要执行此方法 # self.jsonfile = '../../../cookiejson/cookieagent.json' # self.operationjson = OperationJson(file_path=self.jsonfile) #实例化 # self.cookie = self.operationjson.get_all_data() # print("self.cookie:%s" % self.cookie) self.activeweb = ActiveWeb() # 实例化 self.loginurl = LoginPage().pageurl self.activeweb.getUrl(self.loginurl) # 打开网址 if ISONLINE: self.activeweb.findElementByXpathAndInput( LoginPage().account, ONLINE_AGENT_LOGIN_ACCOUNT) self.activeweb.findElementByXpathAndInput( LoginPage().password, ONLINE_AGENT_LOGIN_PASSWORD) else: self.activeweb.findElementByXpathAndInput( LoginPage().account, TEST_AGENT_LOGIN_ACCOUNT) self.activeweb.findElementByXpathAndInput( LoginPage().password, TEST_AGENT_LOGIN_PASSWORD) self.activeweb.findElementByXpathAndClick(LoginPage().loginbutton) self.activeweb.delayTime(3) self.testpageurl = MerchantListPage().pageurl #测试页面url self.testpagesearchbutton = MerchantListPage().searchbutton #测试页面搜索按钮 self.testpagesearchresultxpathtrue = MerchantListPage( ).searchtableresult #测试页面找到相应数据结果xpath路径 self.testpagesearchresultxpathfalse = MerchantListPage( ).searchtableresult2 #测试页面没有找到相应数据结果xpath路径 #pass def tearDown(self): # 每条用例执行测试之后都要执行此方法 self.activeweb.closeBrowse() pass #定义搜索查找函数 def definesearch(self, num, selectxpath=None, selectoptiontextxpath=None, selectinputxpath=None, selectinputtext=None, isfind=False, colnum=None, checktext=None): # self.activeweb.writerCookies(self.cookie, LoginPage().pageurl,MerchantListPage().pageurl) self.activeweb.getUrl(self.testpageurl) self.activeweb.delayTime(3) if selectxpath != None and selectoptiontextxpath != None: self.activeweb.findElementByXpathAndScriptClick(selectxpath) self.activeweb.findElementByXpathAndScriptClick( selectoptiontextxpath) # self.activeweb.findElementByXpathAndReturnOptions(selectxpath,str(selectoptiontext)) if selectinputxpath != None and selectinputtext != None: self.activeweb.findElementByXpathAndInput(selectinputxpath, str(selectinputtext)) self.activeweb.findElementByXpathAndClick(self.testpagesearchbutton) self.activeweb.delayTime(5) if isfind: tabledic = self.activeweb.findElementByXpathAndReturnTableNum( num, self.testpagesearchresultxpathtrue) else: tabledic = self.activeweb.findElementByXpathAndReturnTableNum( num, self.testpagesearchresultxpathfalse) for value in tabledic.values(): if str(checktext).lower() in value[int(colnum)].lower(): self.assertTrue(True) self.activeweb.outPutMyLog("在【%s】中存在:【%s】" % (value[int(colnum)], checktext)) else: self.activeweb.outPutMyLog("在【%s】中不存在:【%s】" % (value[int(colnum)], checktext)) self.assertTrue(False) @staticmethod #根据不同的参数生成测试用例 def getTestFunc(num, selectxpath, selectoptiontextxpath, selectinputxpath, selectinputtext, isfind, colnum, checktext): def func(self): self.definesearch(num, selectxpath, selectoptiontextxpath, selectinputxpath, selectinputtext, isfind, colnum, checktext) return func
class TestReviewClass(unittest.TestCase): # 创建测试类 @classmethod # 类方法,只执行一次,但必须要加注解@classmethod,且名字固定为setUpClass def setUpClass(cls): # cls.activeweb = ActiveWeb() # 实例化 # cls.loginurl = LoginPage().pageurl # cls.activeweb.getUrl(cls.loginurl) # 打开网址 # if ISONLINE: # cls.activeweb.findElementByXpathAndInput(LoginPage().account, ONLINE_MANAGER_LOGIN_ACCOUNT) # cls.activeweb.findElementByXpathAndInput(LoginPage().password, ONLINE_MANAGER_LOGIN_PASSWORD) # else: # cls.activeweb.findElementByXpathAndInput(LoginPage().account, TEST_MANAGER_LOGIN_ACCOUNT) # cls.activeweb.findElementByXpathAndInput(LoginPage().password, TEST_MANAGER_LOGIN_PASSWORD) # # cls.activeweb.findElementByXpathAndScriptClick(LoginPage().loginbutton) # cls.activeweb.delayTime(3) # cls.testpage = ReviewPage() # cls.activeweb.getUrl(MerchantListPage().pageurl) # cls.activeweb.delayTime(3) pass @classmethod # 类方法,只执行一次,但必须要加注解@classmethod,且名字固定为tearDownClass def tearDownClass(cls): # cls.activeweb.closeBrowse() pass def setUp(self): # 每条用例执行测试之前都要执行此方法 self.activeweb = ActiveWeb() # 实例化 self.loginurl = LoginPage().pageurl self.activeweb.getUrl(self.loginurl) # 打开网址 if ISONLINE: self.activeweb.findElementByXpathAndInput( LoginPage().account, ONLINE_MANAGER_LOGIN_ACCOUNT) self.activeweb.findElementByXpathAndInput( LoginPage().password, ONLINE_MANAGER_LOGIN_PASSWORD) else: self.activeweb.findElementByXpathAndInput( LoginPage().account, TEST_MANAGER_LOGIN_ACCOUNT) self.activeweb.findElementByXpathAndInput( LoginPage().password, TEST_MANAGER_LOGIN_PASSWORD) self.activeweb.findElementByXpathAndScriptClick( LoginPage().loginbutton) self.activeweb.delayTime(3) self.testpage = ReviewPage() # self.testpageurl =self.testpage.pageurl #测试页面url self.activeweb.getUrl(MerchantListPage().pageurl) self.activeweb.delayTime(3) pass def tearDown(self): # 每条用例执行测试之后都要执行此方法 self.activeweb.closeBrowse() pass def defineclickturndown(self, num, reviewnoteinputtext): self.definesearch(num, MerchantListPage().keywordselectxpath, MerchantListPage().keywordoption_merchantid_text, MerchantListPage().keywordselectinputxpath, MANAGER_REVIEW_MERCHANTID, True, 6, "Review") #点击Review self.activeweb.findElementByXpathAndScriptClick( MerchantListPage().firstdatareview) #输入拒绝内容 self.activeweb.findElementByXpathAndInput( self.testpage.reviewnoteinput, reviewnoteinputtext) #获取输入的内容 self.activeweb.findElementByXpathAndReturnText( num, self.testpage.reviewnoteinput) #点击拒绝按钮 self.activeweb.findElementByXpathAndScriptClickNum( num, self.testpage.turndownbutton) # self.activeweb.delayTime(1000) def defineasserttextnum(self, num, testelexpath, expecttext): #断言是否存在某个文本 testtext = self.activeweb.findElementByXpathAndReturnText( num, testelexpath) self.assertEqual(expecttext, testtext) self.activeweb.outPutMyLog("存在文本信息:%s" % testtext) def defineisintable(self, num, testtablexpath, expecttext, tablecolnum): tabledic = self.activeweb.findElementByXpathAndReturnTableNum( num, testtablexpath) for value in tabledic.values(): self.activeweb.outPutMyLog("%s" % value[int(tablecolnum)]) if str(expecttext).lower() in value[int(tablecolnum)].lower(): self.assertTrue(True) self.activeweb.outPutMyLog( "在%s中存在文本信息:%s" % (value[int(tablecolnum)], expecttext)) break else: self.activeweb.outPutMyLog( "在%s不存在文本信息:%s" % (value[int(tablecolnum)], expecttext)) self.assertTrue(False) #定义搜索查找函数 def definesearch(self, num, selectxpath=None, selectoptiontext=None, selectinputxpath=None, selectinputtext=None, isfind=False, colnum=None, checktext=None): if selectxpath != None and selectoptiontext != None: # self.activeweb.findElementByXpathAndScriptClick(selectxpath) # self.activeweb.findElementByXpathAndScriptClick(selectoptiontextxpath) self.activeweb.findElementByXpathAndReturnOptionsNum( num, selectxpath, str(selectoptiontext)) if selectinputxpath != None and selectinputtext != None: self.activeweb.findElementByXpathAndInput(selectinputxpath, str(selectinputtext)) self.activeweb.findElementByXpathAndClick( MerchantListPage().searchbutton) self.activeweb.delayTime(5) if isfind: tabledic = self.activeweb.findElementByXpathAndReturnTableNum( num, MerchantListPage().searchtableresult) else: tabledic = self.activeweb.findElementByXpathAndReturnTableNum( num, MerchantListPage().searchtableresult2) for value in tabledic.values(): if str(checktext).lower() in value[int(colnum)].lower(): self.assertTrue(True) self.activeweb.outPutMyLog("在%s中存在文本信息:%s" % (value[int(colnum)], checktext)) break else: self.activeweb.outPutMyLog("在%s不存在文本信息:%s" % (value[int(colnum)], checktext)) self.assertTrue(False) @staticmethod #根据不同的参数生成测试用例 def getTestFunc(num, reviewnoteinputtext): def func(self): self.defineclickturndown(num, reviewnoteinputtext) return func
class TestReviseClass(unittest.TestCase): # 创建测试类 @classmethod # 类方法,只执行一次,但必须要加注解@classmethod,且名字固定为setUpClass def setUpClass(cls): # cls.activeweb = ActiveWeb() # 实例化 # cls.loginurl = LoginPage().pageurl # cls.activeweb.getUrl(cls.loginurl) # 打开网址 # cls.activeweb.findElementByXpathAndInput(LoginPage().account,AGENT_LOGIN_ACCOUNT) # cls.activeweb.findElementByXpathAndInput(LoginPage().password,AGENT_LOGIN_PASSWORD) # cls.activeweb.findElementByXpathAndClick(LoginPage().loginbutton) # cls.activeweb.delayTime(3) # cls.testpage = RevisePage() # cls.testpageurl =cls.testpage.pageurl #测试页面url # cls.activeweb.getUrl(cls.testpageurl) # cls.activeweb.delayTime(3) pass @classmethod # 类方法,只执行一次,但必须要加注解@classmethod,且名字固定为tearDownClass def tearDownClass(cls): # cls.activeweb.closeBrowse() pass def setUp(self): # 每条用例执行测试之前都要执行此方法 self.activeweb = ActiveWeb() # 实例化 self.loginurl = LoginPage().pageurl self.activeweb.getUrl(self.loginurl) # 打开网址 self.activeweb.findElementByXpathAndInput(LoginPage().account,AGENT_LOGIN_ACCOUNT) self.activeweb.findElementByXpathAndInput(LoginPage().password,AGENT_LOGIN_PASSWORD) self.activeweb.findElementByXpathAndClick(LoginPage().loginbutton) self.activeweb.delayTime(3) self.testpage = RevisePage() self.testpageurl =self.testpage.pageurl #测试页面url self.activeweb.getUrl(self.testpageurl) self.activeweb.delayTime(3) pass def tearDown(self): # 每条用例执行测试之后都要执行此方法 self.activeweb.closeBrowse() pass def defineclicksubmitagain(self,num): revisemerchantname = self.activeweb.findElementByXpathAndReturnValueNum(num,self.testpage.brandnameinput,"value") self.activeweb.findElementByXpathAndScriptClickNum(num,self.testpage.merchantinfo) self.activeweb.findElementByXpathAndScriptClickNum(num,self.testpage.submitagainbutton) #断言是否有“Success” self.defineasserttextnum(num,AddMerchantSuccessPage().successindividu,AddMerchantSuccessPage().successtext) self.activeweb.findElementByXpathAndClickNum(num,AddMerchantSuccessPage().okbuttonindividu) #断言是否有“Done” self.defineasserttextnum(num, AddMerchantDonePage().done, AddMerchantDonePage().donetext) # 断言是否有“Waiting for approval” self.defineasserttextnum(num, AddMerchantDonePage().waitingforapproval, AddMerchantDonePage().waitingforapprovaltext) # 断言是否有brandnameinputtext(添加的商户名) self.defineasserttextnum(num, AddMerchantDonePage().merchantnamevalue, revisemerchantname) self.activeweb.findElementByXpathAndClickNum(num,AddMerchantDonePage().merchantlistbutton) # #断言商户列表中是否有新增加的商户名 # self.defineisintable(num,MerchantListPage().searchtableresult,revisemerchantname,1) #断言商户列表中Revise的商户的状态发生变化,右Revise变成Details revisemerchantname = "test_individu_20190415141440" self.definesearch(num, MerchantListPage().keywordselectxpath, MerchantListPage().keywordoption_merchantname_xpath, MerchantListPage().keywordselectinputxpath, revisemerchantname, True, 6, "Details") # self.activeweb.delayTime(1000) def defineasserttextnum(self,num,testelexpath,expecttext): #断言是否存在某个文本 testtext = self.activeweb.findElementByXpathAndReturnText(num,testelexpath) self.assertEqual(expecttext,testtext) self.activeweb.outPutMyLog("存在文本信息:%s"%testtext) def defineisintable(self,num,testtablexpath,expecttext,tablecolnum): tabledic = self.activeweb.findElementByXpathAndReturnTableNum(num, testtablexpath) for value in tabledic.values(): self.activeweb.outPutMyLog("%s"% value[int(tablecolnum)]) if str(expecttext).lower() in value[int(tablecolnum)].lower(): self.assertTrue(True) self.activeweb.outPutMyLog("在%s中存在文本信息:%s"% (value[int(tablecolnum)],expecttext)) break else: self.activeweb.outPutMyLog("在%s不存在文本信息:%s"% (value[int(tablecolnum)],expecttext)) self.assertTrue(False) #定义搜索查找函数 def definesearch(self,num,selectxpath=None,selectoptiontextxpath=None,selectinputxpath=None,selectinputtext=None,isfind=False,colnum=None,checktext=None): if selectxpath !=None and selectoptiontextxpath !=None: self.activeweb.findElementByXpathAndScriptClick(selectxpath) self.activeweb.findElementByXpathAndScriptClick(selectoptiontextxpath) if selectinputxpath != None and selectinputtext !=None: self.activeweb.findElementByXpathAndInput(selectinputxpath,str(selectinputtext)) self.activeweb.findElementByXpathAndClick(MerchantListPage().searchbutton) self.activeweb.delayTime(5) if isfind: tabledic = self.activeweb.findElementByXpathAndReturnTableNum(num,MerchantListPage().searchtableresult) else: tabledic = self.activeweb.findElementByXpathAndReturnTableNum(num, MerchantListPage().searchtableresult2) for value in tabledic.values(): if str(checktext).lower() in value[int(colnum)].lower(): self.assertTrue(True) self.activeweb.outPutMyLog("在%s中存在文本信息:%s"% (value[int(colnum)],checktext)) break else: self.activeweb.outPutMyLog("在%s不存在文本信息:%s"% (value[int(colnum)],checktext)) self.assertTrue(False) @staticmethod #根据不同的参数生成测试用例 def getTestFunc( num): def func(self): self.defineclicksubmitagain(num) return func
class TestReviewMerchantClass(unittest.TestCase): # 创建测试类 @classmethod # 类方法,只执行一次,但必须要加注解@classmethod,且名字固定为setUpClass def setUpClass(cls): # from base.getcookie import GetCookie # outjsonfile = "../../../cookiejson/cookiemanager.json" # outloginurl = LoginPage().pageurl # outloginaccountxpath = LoginPage().account # outloginaccounttext = "81122336666" # outloginppasswordxpath = LoginPage().password # outloginpasswordtext = "abc123456" # outloginbuttonxpath = LoginPage().loginbutton # # getcookie = GetCookie(outjsonfile=outjsonfile, outloginurl=outloginurl, # outloginaccountxpath=outloginaccountxpath, # outloginaccounttext=outloginaccounttext, outloginppasswordxpath=outloginppasswordxpath, # outloginpasswordtext=outloginpasswordtext, # outloginbuttonxpath=outloginbuttonxpath) # 实例化 # getcookie.writerCookieToJson() pass @classmethod # 类方法,只执行一次,但必须要加注解@classmethod,且名字固定为tearDownClass def tearDownClass(cls): pass def setUp(self): # 每条用例执行测试之前都要执行此方法 # self.jsonfile = '../../../cookiejson/cookieagent.json' # self.operationjson = OperationJson(file_path=self.jsonfile) #实例化 # self.cookie = self.operationjson.get_all_data() # print("self.cookie:%s" % self.cookie) self.activeweb = ActiveWeb() # 实例化 self.loginurl = LoginPage().pageurl self.activeweb.getUrl(self.loginurl) # 打开网址 self.activeweb.findElementByXpathAndInput(LoginPage().account,MANAGER_LOGIN_ACCOUNT) self.activeweb.findElementByXpathAndInput(LoginPage().password,MANAGER_LOGIN_PASSWORD) self.activeweb.findElementByXpathAndClick(LoginPage().loginbutton) self.activeweb.delayTime(3) self.testpage = MerchantListPage() self.testpageurl = self.testpage.pageurl #测试页面url self.testpagesearchbutton = self.testpage.searchbutton #测试页面搜索按钮 self.testpagesearchresultxpathtrue = self.testpage.searchtableresult #测试页面找到相应数据结果xpath路径 self.testpagesearchresultxpathfalse = self.testpage.searchtableresult2 #测试页面没有找到相应数据结果xpath路径 #审核页 self.reviewpage = ReviewPage() #pass def tearDown(self): # 每条用例执行测试之后都要执行此方法 self.activeweb.closeBrowse() pass #定义搜索查找函数 def definesearch(self,num,selectxpath=None,selectoptiontextxpath=None,selectinputxpath=None,selectinputtext=None,isfind=False,colnum=None,checktext=None): # self.activeweb.writerCookies(self.cookie, LoginPage().pageurl,MerchantListPage().pageurl) self.activeweb.getUrl(self.testpageurl) self.activeweb.delayTime(3) if selectxpath !=None and selectoptiontextxpath !=None: self.activeweb.findElementByXpathAndScriptClick(selectxpath) self.activeweb.findElementByXpathAndScriptClick(selectoptiontextxpath) # self.activeweb.findElementByXpathAndReturnOptions(selectxpath,str(selectoptiontext)) if selectinputxpath != None and selectinputtext !=None: self.activeweb.findElementByXpathAndInput(selectinputxpath,str(selectinputtext)) self.activeweb.findElementByXpathAndClick(self.testpagesearchbutton) self.activeweb.delayTime(5) if isfind: tabledic = self.activeweb.findElementByXpathAndReturnTableNum(num,self.testpagesearchresultxpathtrue) else: tabledic = self.activeweb.findElementByXpathAndReturnTableNum(num, self.testpagesearchresultxpathfalse) for value in tabledic.values(): if str(checktext).lower() in value[int(colnum)].lower(): self.assertTrue(True) self.activeweb.outPutMyLog("在%s中存在文本信息:%s"% (value[int(colnum)],checktext)) break else: self.activeweb.outPutMyLog("在%s不存在文本信息:%s"% (value[int(colnum)],checktext)) self.assertTrue(False) #自动审核商户 def testreviewmerchant(self): self.activeweb.getUrl(self.testpageurl) self.activeweb.delayTime(3) self.activeweb.findElementByXpathAndInput(self.testpage.keywordselectinputxpath, str("ahditest_merchantfreya_R_individu")) #输入框中输入“ahditest_merchantfreya_R_individu” self.activeweb.findElementByXpathAndReturnOptions(self.testpage.statusselectxpath, str("Waiting For Review")) self.activeweb.findElementByXpathAndClick(self.testpagesearchbutton) #点击搜索按钮 self.activeweb.findElementByXpathAndClick(self.testpage.reviewtextlinkxpath) #点击“Review” self.activeweb.delayTime(3) self.activeweb.findElementByXpathAndClick(self.reviewpage.approvedbutton) # 点击审核页“approved” self.activeweb.findElementByXpathAndClick(self.reviewpage.confirmbutton) # 点击审核页第二页“confirm” #验证跳转到商户列表页 self.activeweb.findElementByXpathAndReturnTextNotNum(self.testpagesearchbutton)
class TestAwardRequestListSearchClass(unittest.TestCase): # 创建测试类 @classmethod # 类方法,只执行一次,但必须要加注解@classmethod,且名字固定为setUpClass def setUpClass(cls): # from base.getcookie import GetCookie # outjsonfile = "../../../cookiejson/cookiemanager.json" # outloginurl = LoginPage().pageurl # outloginaccountxpath = LoginPage().account # outloginaccounttext = "81122336666" # outloginppasswordxpath = LoginPage().password # outloginpasswordtext = "abc123456" # outloginbuttonxpath = LoginPage().loginbutton # # getcookie = GetCookie(outjsonfile=outjsonfile, outloginurl=outloginurl, # outloginaccountxpath=outloginaccountxpath, # outloginaccounttext=outloginaccounttext, outloginppasswordxpath=outloginppasswordxpath, # outloginpasswordtext=outloginpasswordtext, # outloginbuttonxpath=outloginbuttonxpath) # 实例化 # getcookie.writerCookieToJson() pass @classmethod # 类方法,只执行一次,但必须要加注解@classmethod,且名字固定为tearDownClass def tearDownClass(cls): pass def setUp(self): # 每条用例执行测试之前都要执行此方法 # self.jsonfile = '../../../cookiejson/cookieagent.json' # self.operationjson = OperationJson(file_path=self.jsonfile) #实例化 # self.cookie = self.operationjson.get_all_data() # print("self.cookie:%s" % self.cookie) self.activeweb = ActiveWeb() # 实例化 self.loginurl = LoginPage().pageurl self.activeweb.getUrl(self.loginurl) # 打开网址 self.activeweb.findElementByXpathAndInput(LoginPage().account, MANAGER_LOGIN_ACCOUNT) self.activeweb.findElementByXpathAndInput(LoginPage().password, MANAGER_LOGIN_PASSWORD) self.activeweb.findElementByXpathAndClick(LoginPage().loginbutton) self.activeweb.delayTime(3) self.testpage = AwardRequestListPage() self.testpageurl = self.testpage.pageurl #测试页面url self.testpagesearchbutton = self.testpage.cx_button self.testpagesearchresultxpathtrue = self.testpage.searchtableresult self.testpagesearchresultxpathfalse = self.testpage.searchtableresult2 #pass def tearDown(self): # 每条用例执行测试之后都要执行此方法 self.activeweb.closeBrowse() # pass def writexunicookie(self): addcookie = { 'name': '.nereus.manager.settle.banks', 'value': 'QCK9GvKG8OEOh6lRUyyLlmKnHl8i3w' } self.activeweb.driver.add_cookie(addcookie) self.activeweb.driver.refresh() self.activeweb.delayTime(5) self.activeweb.outPutMyLog("写入虚拟银行cookie完成") #定义搜索查找函数 def definesearch(self, num, isclicklastpage=None, selectxpath=None, selectoptiontextxpath=None, selectinputxpath=None, selectinputselectonexpath=None, selectinputtext=None, isfind=False, colnum=None, checktext=None): # self.activeweb.writerCookies(self.cookie, LoginPage().pageurl,MerchantListPage().pageurl) self.activeweb.getUrl(self.testpageurl) self.activeweb.delayTime(5) #点击最后一页 if isclicklastpage: self.activeweb.findElementByXpathAndScriptClick( self.testpage.last_page) if selectxpath != None and selectoptiontextxpath != None: self.activeweb.findElementByXpathAndScriptClick(selectxpath) self.activeweb.findElementByXpathAndScriptClick( selectoptiontextxpath) # self.activeweb.findElementByXpathAndReturnOptions(selectxpath,str(selectoptiontext)) if selectinputxpath != None and selectinputtext != None: self.activeweb.findElementByXpathAndInput(selectinputxpath, str(selectinputtext)) if selectinputselectonexpath != None: self.activeweb.findElementByXpathAndScriptClick( selectinputselectonexpath) self.activeweb.findElementByXpathAndClick(self.testpagesearchbutton) self.activeweb.delayTime(5) # self.activeweb.delayTime(5000) if isfind: tabledic = self.activeweb.findElementByXpathAndReturnTableNum( num, self.testpagesearchresultxpathtrue) else: tabledic = self.activeweb.findElementByXpathAndReturnTableNum( num, self.testpagesearchresultxpathfalse) for value in tabledic.values(): if str(checktext).lower() in value[int(colnum)].lower(): self.assertTrue(True) self.activeweb.outPutMyLog("在【%s】中存在:【%s】" % (value[int(colnum)], checktext)) else: self.activeweb.outPutMyLog("在【%s】中不存在:【%s】" % (value[int(colnum)], checktext)) self.assertTrue(False) def defineasserttextnum(self, num, testelexpath, expecttext): #断言是否存在某个文本 testtext = self.activeweb.findElementByXpathAndReturnText( num, testelexpath) self.assertEqual(expecttext, testtext) self.activeweb.outPutMyLog("存在text:%s" % testtext) def defineisintable(self, num, testtablexpath, expecttext, tablecolnum): notexsitflag = True tabledic = self.activeweb.findElementByXpathAndReturnTableNum( num, testtablexpath) for value in tabledic.values(): # self.activeweb.outPutMyLog("%s"% value[int(tablecolnum)]) if str(expecttext).lower() in value[int(tablecolnum)].lower(): self.assertTrue(True) self.activeweb.outPutMyLog( "在【%s】中存在:【%s】" % (value[int(tablecolnum)], expecttext)) notexsitflag = False break if notexsitflag: self.activeweb.outPutMyLog("在【%s】不存在:【%s】" % (tabledic, expecttext)) self.assertTrue(False) @staticmethod # 根据不同的参数生成测试用例 def getTestFunc(num, isclicklastpage, selectxpath, selectoptiontextxpath, selectinputxpath, selectinputselectonexpath, selectinputtext, isfind, colnum, checktext): def func(self): self.definesearch(num, isclicklastpage, selectxpath, selectoptiontextxpath, selectinputxpath, selectinputselectonexpath, selectinputtext, isfind, colnum, checktext) return func
class GetCookie(): def __init__(self,outjsonfile=None,outloginurl=None,outloginaccountxpath=None, outloginaccounttext=None,outloginppasswordxpath=None,outloginpasswordtext=None, outloginbuttonxpath=None): if outjsonfile==None: self.jsonfile = '../cookiejson/cookiemanager.json' else: self.jsonfile = outjsonfile if outloginurl==None: self.loginurl ="https://bjw.halodigit.com:9090/nereus/manager/index#/login" else: self.loginurl = outloginurl if outloginaccountxpath==None: self.loginaccountxpath = "/html/body/div[1]/div[2]/form/div/div[1]/input" else: self.loginaccountxpath = outloginaccountxpath if outloginaccounttext==None: self.loginaccount = "*****@*****.**" else: self.loginaccount = outloginaccounttext if outloginppasswordxpath==None: self.loginppasswordxpath = "/html/body/div[1]/div[2]/form/div/div[2]/input" else: self.loginppasswordxpath = outloginppasswordxpath if outloginpasswordtext==None: self.loginpassword = "******" else: self.loginpassword = outloginpasswordtext if outloginbuttonxpath==None: self.loginbuttonxpath = "/html/body/div[1]/div[2]/form/div/a[1]/span" else: self.loginbuttonxpath = outloginbuttonxpath self.operationjson = OperationJson(file_path=self.jsonfile) #实例化 self.activeweb = ActiveWeb() # 实例化 def getCookie(self): # 登录 self.activeweb.getUrl(self.loginurl) # 打开网址 self.activeweb.findElementByXpathAndInput(self.loginaccountxpath,self.loginaccount) self.activeweb.findElementByXpathAndInput(self.loginppasswordxpath,self.loginpassword) self.activeweb.findElementByXpathAndClick(self.loginbuttonxpath) self.activeweb.delayTime(3) if 'merchant' in self.jsonfile : print("outjsonfile为:%s"% self.jsonfile) self.selectMerchant() else: print("开始获取cookie---") # 获取cookie cookie = self.activeweb.getCookies() self.activeweb.closeBrowse() return cookie def writerCookieToJson(self): self.cookie = self.getCookie() self.operationjson.write_data(self.cookie) print("\ncookie信息‘%s’已经写入‘%s’文件里。\n" % (self.cookie,self.jsonfile)) #选商户时的操作 def selectMerchant(self): self.merchantxpath = '/html/body/div[1]/div[2]/div/form/div[5]/p[1]/span/input' self.confirmbuttonxpath = '/html/body/div[1]/div[2]/div/form/div[43]/p/span[2]/button' self.activeweb.findElementByXpathAndScriptClick(self.merchantxpath) self.activeweb.findElementByXpathAndClick(self.confirmbuttonxpath) self.activeweb.delayTime(3)