def on_click(x, y, button, pressed): if pressed: global last_click, previous_click last_click = time.time() if previous_click is None: previous_click = last_click clicks.append(Click(x, y, 0.8)) else: clicks.append(Click(x, y, last_click - previous_click)) previous_click = last_click
class Unapproved(unittest.TestSuite): click = Click() returnpage = Returnpage() def __init__(self): pass def unapproved(self): try: try: base.name_click(u'待审批需求') except BaseException: try: base.name_click(u'服务台') base.name_click(u'待审批需求') except BaseException: base.name_click(u'工作') base.name_click(u'服务台') base.name_click(u'待审批需求') sleep(2) try: base.id_click( 'com.facilityone.product.shang:id/un_check_demand_main_rl') no = base.id_text( 'com.facilityone.product.shang:id/service_demand_item_id_describe_tv' ) except BaseException: Unapproved.returnpage.returnpage() no = '无待审批需求' return no except BaseException: self.assertEqual(0, 1, "服务台待审批模块,详情进入测试未通过") def Pass(self): try: Unapproved.click.click() base.name_click('审批') base.id_sendkey( 'com.facilityone.product.shang:id/work_order_verify_content_et', '审批通过一下') base.id_click( 'com.facilityone.product.shang:id/work_order_verify_sure_btn') Unapproved.returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "服务台待审批模块,审批通过测试未通过") def refuse(self): Unapproved.click.click() base.name_click('审批') base.id_sendkey( 'com.facilityone.product.shang:id/work_order_verify_content_et', '审批不通过') base.id_click( 'com.facilityone.product.shang:id/work_order_verify_cancel_btn') Unapproved.returnpage.returnpage()
class unapproved(unittest.TestSuite): click=Click() def __init__(self): pass def unapproved(self,no): try: cp = configparser.SafeConfigParser() cp.read('base.ini', encoding='utf-8') try: base.name_click(u'待审批工单') except BaseException: try: base.name_click(u'工单') base.name_click(u'待审批工单') except BaseException: base.name_click(u'工作') base.name_click(u'工单') base.name_click(u'待审批工单') sleep(2) base.name_click(no) except BaseException: self.assertEqual(0, 1, "工单待审批模块,进入详情测试未通过") def refuse(self): try: sleep(3) i = random.randint(0, 1000) try: base.name_click('审批') except BaseException: base.driver.implicitly_wait(300) unapproved.click.click() base.driver.implicitly_wait(0) base.name_click('审批') base.id_sendkey('com.facilityone.product.shang:id/work_order_verify_content_et', '审批拒绝原因' + str(i)) base.name_click('拒绝') except BaseException: self.assertEqual(0, 1, "工单待审批模块,审批拒绝测试未通过") def Pass(self): try: sleep(3) i = random.randint(0, 1000) try: base.name_click('审批') except BaseException: base.driver.implicitly_wait(300) unapproved.click.click() base.driver.implicitly_wait(0) base.name_click('审批') base.id_sendkey('com.facilityone.product.shang:id/work_order_verify_content_et', '审批通过原因' + str(i)) base.name_click('通过') except BaseException: self.assertEqual(0, 1, "工单待审批模块,审批通过测试未通过")
class PaymentQuery(unittest.TestSuite): DropDown=DropDown() Returnpage=Returnpage() Click=Click() def query(self,Y,M): try: cp = configparser.SafeConfigParser() cp.read('base.ini', encoding='utf-8') try: base.name_click(u'缴费单查询') except BaseException: try: base.name_click(u'缴费管理') base.name_click(u'缴费单查询') except BaseException: base.name_click(u'工作') sleep(1) PaymentQuery.DropDown.dropDown() base.name_click(u'缴费管理') base.name_click(u'缴费单查询') Y1 = int(datetime.now().strftime('%Y')) M1 = int(datetime.now().strftime('%m')) j = int(Y1) - int(Y) i = int(M1) - int(M) k = j * 12 - i print(str(Y1) + ',' + str(M1) + ',' + str(k)) if k > 0: for m in range(abs(k)): sleep(1) base.id_click('com.facilityone.product.shang:id/s_history_next_iv') else: for m in range(abs(k)): sleep(1) base.id_click('com.facilityone.product.shang:id/s_history_pre_iv') for z in range(1000): try: base.name_click(cp.get('payment', 'paid')) break except BaseException: PaymentQuery.DropDown.dropDown() sleep(2) PaymentQuery.DropDown.dropDown() PaymentQuery.Returnpage.returnpage() PaymentQuery.Returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "缴费单查询模块,测试未通过")
class Refunds(unittest.TestSuite): DropDown=DropDown() Returnpage=Returnpage() Click=Click() def refunds(self): try: cp = configparser.SafeConfigParser() cp.read('base.ini', encoding='utf-8') try: base.name_click(u'退款单管理') except BaseException: try: base.name_click(u'缴费管理') base.name_click(u'退款单管理') except BaseException: base.name_click(u'工作') sleep(1) Refunds.DropDown.dropDown() base.name_click(u'缴费管理') base.name_click(u'退款单管理') for i in range(100): try: base.name_click(cp.get('payment', 'refunds')) break except BaseException: Refunds.DropDown.dropDown() Refunds.Click.click() except BaseException: self.assertEqual(0, 1, "退费单管理模块,测试未通过") def close(self): try: base.name_click('关闭') base.name_click('确定') Refunds.Returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "缴费单查询模块,关闭测试未通过")
class unevaluated(unittest.TestSuite): click = Click() returnPage = Returnpage() dropdown = DropDown() def __init__(self): pass def unevaluated(self, no): try: try: base.name_click(u'待评价需求') except BaseException: try: base.name_click(u'服务台') base.name_click(u'待评价需求') except BaseException: base.name_click(u'工作') base.name_click(u'服务台') base.name_click(u'待评价需求') sleep(2) for i in range(100): try: base.name_click(no) break except BaseException: unevaluated.dropdown.dropDown() unevaluated.click.click() base.name_click(u'满意度') base.id_sendkey( 'com.facilityone.product.shang:id/service_demand_satisfy_content_et', '测试评价') base.name_click(u'评价') unevaluated.returnPage.returnpage() except BaseException: self.assertEqual(0, 1, "待评价需求模块,测试未通过")
class Paid(unittest.TestSuite): DropDown = DropDown() Returnpage = Returnpage() Click = Click() def __init__(self): pass def paid(self): try: cp = configparser.SafeConfigParser() cp.read('base.ini', encoding='utf-8') try: base.name_click(u'已缴费单') except BaseException: try: base.name_click(u'缴费管理') base.name_click(u'已缴费单') except BaseException: base.name_click(u'工作') sleep(1) Paid.DropDown.dropDown() base.name_click(u'缴费管理') base.name_click(u'已缴费单') for i in range(100): try: base.name_click(cp.get('payment', 'paid')) break except BaseException: Paid.DropDown.dropDown() time = base.id_text( 'com.facilityone.product.shang:id/epayment_detail_create_time_tv' ) Paid.Click.click() return time except BaseException: self.assertEqual(0, 1, "已缴费单模块,测试未通过") def close(self): try: base.name_click('关闭') base.id_sendkey( 'com.facilityone.product.shang:id/work_order_verify_content_et', '缴费关闭') base.id_click( 'com.facilityone.product.shang:id/work_order_verify_sure_btn') except BaseException: self.assertEqual(0, 1, "已缴费单模块,关闭测试未通过") def refund(self): try: base.name_click('退款') phone = base.id_text( 'com.facilityone.product.shang:id/edit_item_content_et') if phone == "" or phone == None: base.id_sendkey( 'com.facilityone.product.shang:id/edit_item_content_et', '15542540563') Paid.DropDown.dropDown() Paid.DropDown.dropDown() base.id_sendkey( 'com.facilityone.product.shang:id/multi_input_content_et', '退款') base.driver.tap([(102, 1114)], 1) base.name_click('从相册中选择') base.id_click('com.facilityone.product.shang:id/cb_photo_lpsi') base.name_click('确定') base.name_click('提交') Paid.Returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "已缴费单模块,退款测试未通过")
class Management(unittest.TestCase): DropDown =DropDown() Returnpage=Returnpage() click=Click() # def __init__(self): # pass def management(self): try: try: base.name_click(u'合同管理') except BaseException: try: base.name_click(u'合同管理') base.name_click(u'合同管理') except BaseException: base.name_click(u'工作') sleep(1) Management.DropDown.dropDown() base.name_click(u'合同管理') base.name_click(u'合同管理') sleep(5) except BaseException: self.assertEqual(0, 1, "合同管理模块,进入详情测试未通过") def activity(self,manage): for i in range(100): try: base.name_click(manage) break except BaseException: Management.DropDown.dropDown() # 终止操作 def terminate(self): try: Management.click.click() i = random.randint(0, 1000) base.name_click('终止') base.id_sendkey('com.facilityone.product.shang:id/adjust_inventory_batch_num_et', '终止' + str(i)) base.id_click('com.facilityone.product.shang:id/inventory_pass_btn') Management.Returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "合同模块,终止测试未通过") # 恢复操作 def recovery(self): try: Management.click.click() i = random.randint(0, 1000) base.name_click('恢复') base.id_sendkey('com.facilityone.product.shang:id/adjust_inventory_batch_num_et', '恢复' + str(i)) base.id_click('com.facilityone.product.shang:id/inventory_pass_btn') Management.Returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "合同模块,恢复测试未通过") # 存档操作 def archive(self): try: Management.click.click() sleep(2) base.name_click('存档') sleep(2) Management.Returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "合同模块,存档测试未通过") def acceptPass(self): try: Management.click.click() i = random.randint(0, 1000) base.name_click('验收') base.id_sendkey('com.facilityone.product.shang:id/multi_input_content_et', '验收通过' + str(i)) base.name_click('验收') sleep(2) base.name_click('通过') Management.Returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "合同模块,验收通过测试未通过") def acceptReject(self): try: Management.click.click() i = random.randint(0, 1000) base.name_click('验收') base.id_sendkey('com.facilityone.product.shang:id/multi_input_content_et', '验收不通过' + str(i)) base.name_click('验收') sleep(2) base.name_click('不通过') Management.Returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "合同模块,验收不通过测试未通过")
class completed(unittest.TestSuite): click=Click() def __init__(self): pass def uncompleted(self,no): try: cp = configparser.SafeConfigParser() cp.read('base.ini', encoding='utf-8') sleep(1) try: base.name_click(u'待处理工单') except BaseException: try: base.name_click(u'工单') base.name_click(u'待处理工单') except BaseException: base.name_click(u'工作') base.name_click(u'工单') base.name_click(u'待处理工单') sleep(2) base.name_click(no) except BaseException: self.assertEqual(0, 1, "工单待处理模块,进入详情测试未通过") def receive(self): try: base.driver.implicitly_wait(300) completed.click.click() base.driver.implicitly_wait(0) base.name_click('接单') except BaseException: self.assertEqual(0, 1, "工单待处理模块,接单测试未通过") def completed(self): try: base.driver.implicitly_wait(300) completed.click.click() base.driver.implicitly_wait(0) base.name_click('处理完成') except BaseException: self.assertEqual(0, 1, "工单待处理模块,完成测试未通过") def pausecon(self): try: sleep(3) i = random.randint(0, 1000) try: base.name_click('暂停') except BaseException: base.driver.implicitly_wait(300) completed.click.click() base.driver.implicitly_wait(0) base.name_click('暂停') base.id_sendkey('com.facilityone.product.shang:id/work_order_verify_content_et', '暂停继续' + str(i)) base.name_click('继续工作') except BaseException: self.assertEqual(0, 1, "待处理模块,暂停继续工作测试未通过") def con(self): try: sleep(3) base.driver.implicitly_wait(300) completed.click.click() base.driver.implicitly_wait(0) base.name_click('继续工作') except BaseException: self.assertEqual(0, 1, "工单待处理模块,继续工作测试未通过") def pausenotcon(self): try: sleep(3) i = random.randint(0, 1000) try: base.name_click('暂停') except BaseException: base.driver.implicitly_wait(300) completed.click.click() base.driver.implicitly_wait(0) base.name_click('暂停') base.id_sendkey('com.facilityone.product.shang:id/work_order_verify_content_et', '暂停不继续' + str(i)) base.name_click('不继续工作') except BaseException: self.assertEqual(0, 1, "工单待处理模块,暂停不继续工作测试未通过") def stop(self): try: sleep(3) try: base.name_click('终止') except BaseException: base.driver.implicitly_wait(300) completed.click.click() base.driver.implicitly_wait(0) base.name_click('终止') i = random.randint(0, 1000) base.id_sendkey('com.facilityone.product.shang:id/work_order_verify_content_et', '终止原因' + str(i)) base.name_click('终止') except BaseException: self.assertEqual(0, 1, "工单待处理模块,终止测试未通过") def Return(self): try: sleep(3) try: base.name_click('退单') except BaseException: base.driver.implicitly_wait(300) completed.click.click() base.driver.implicitly_wait(0) base.name_click('退单') i = random.randint(0, 1000) base.id_sendkey('com.facilityone.product.shang:id/work_order_verify_content_et', '退单原因' + str(i)) sleep(1) base.id_click('com.facilityone.product.shang:id/work_order_verify_sure_btn') except BaseException: self.assertEqual(0, 1, "工单待处理模块,退单测试未通过") def apply(self): try: sleep(3) cp = configparser.SafeConfigParser() cp.read('base.ini', encoding='utf-8') try: base.name_click('审批申请') except BaseException: base.driver.implicitly_wait(300) completed.click.click() base.driver.implicitly_wait(0) base.name_click('审批申请') i = random.randint(0, 1000) base.id_sendkey('com.facilityone.product.shang:id/multi_input_content_et', '审批事由' + str(i)) base.id_click('com.facilityone.product.shang:id/apply_approval_person_add_btn') base.id_sendkey('com.facilityone.product.shang:id/search_edit_text', cp.get('login', 'realname')) base.id_click('com.facilityone.product.shang:id/person_search_person_item_select_status_cb') base.name_click('确定') base.name_click('提交') except BaseException: self.assertEqual(0, 1, "工单待处理模块,审批申请测试未通过")
class assigned(unittest.TestSuite): click=Click() def __init__(self): pass def assigned(self,inf): try: try: base.name_click(u'待派工工单') except BaseException: try: base.name_click(u'工单') base.name_click(u'待派工工单') except BaseException: base.name_click(u'工作') base.name_click(u'工单') base.name_click(u'待派工工单') base.driver.implicitly_wait(300) base.name_click(inf) sleep(4) no = base.driver.find_element_by_xpath( '/hierarchy/android.widget.FrameLayout/cn.bingoogolapple.swipebacklayout.BGASwipeBackLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout[1]/android.view.ViewGroup/android.widget.LinearLayout/android.widget.TextView').text base.driver.implicitly_wait(0) print(no) return no except BaseException: self.assertEqual(0, 1, "工单待派工模块,进入详情测试未通过") # 派工 def assign(self): try: sleep(3) cp = configparser.SafeConfigParser() cp.read('base.ini', encoding='utf-8') try: base.name_click('派工') except BaseException: base.driver.implicitly_wait(300) assigned.click.click() base.driver.implicitly_wait(0) # 设置预计时间 base.name_click('派工') # base.id_click('com.facilityone.product.shang:id/home_work_order_arrange_begin_time_ll') # base.name_click('确定') # StartTime=base.id_text('com.facilityone.product.shang:id/edit_item_content_tv') # base.id_click('com.facilityone.product.shang:id/home_work_order_arrange_end_time_ll') # base.name_click('确定') # EndTime=base.id_text('com.facilityone.product.shang:id/edit_item_content_tv') base.id_click('com.facilityone.product.shang:id/apply_approval_person_add_btn') base.id_sendkey('com.facilityone.product.shang:id/search_edit_text', cp.get('login', 'realname')) base.id_click('com.facilityone.product.shang:id/person_search_person_item_select_status_cb') sleep(1) base.name_click('确定') i = random.randint(0, 1000) base.id_sendkey('com.facilityone.product.shang:id/send_wo_content_et', '派发内容测试' + str(i)) base.name_click('派工') except BaseException: self.assertEqual(0, 1, "工单待派工模块,派工测试未通过") # 终止 def stop(self): try: sleep(3) try: base.name_click('终止') except BaseException: base.driver.implicitly_wait(300) assigned.click.click() base.driver.implicitly_wait(0) base.name_click('终止') i = random.randint(0, 1000) base.id_sendkey('com.facilityone.product.shang:id/work_order_verify_content_et', '终止原因' + str(i)) base.name_click('终止') except BaseException: self.assertEqual(0, 1, "工单待派工模块,终止测试未通过") # 审批 def apply(self): try: sleep(3) cp = configparser.SafeConfigParser() cp.read('base.ini', encoding='utf-8') try: base.name_click('审批申请') except BaseException: base.driver.implicitly_wait(300) assigned.click.click() base.driver.implicitly_wait(0) base.name_click('审批申请') i = random.randint(0, 1000) base.id_sendkey('com.facilityone.product.shang:id/multi_input_content_et', '审批事由' + str(i)) base.id_click('com.facilityone.product.shang:id/apply_approval_person_add_btn') base.id_sendkey('com.facilityone.product.shang:id/search_edit_text', cp.get('login', 'realname')) base.id_click('com.facilityone.product.shang:id/person_search_person_item_select_status_cb') base.name_click('确定') base.name_click('提交') except BaseException: self.assertEqual(0, 1, "工单待派工模块,审批申请测试未通过")
class Unpaid(unittest.TestSuite): DropDown = DropDown() Returnpage = Returnpage() click = Click() def __init__(self): pass def unpaid(self, time): try: cp = configparser.SafeConfigParser() cp.read('base.ini', encoding='utf-8') try: base.name_click(u'待缴费单') except BaseException: try: base.name_click(u'缴费管理') base.name_click(u'待缴费单') except BaseException: base.name_click(u'工作') sleep(1) Unpaid.DropDown.dropDown() base.name_click(u'缴费管理') base.name_click(u'待缴费单') for i in range(100): try: base.name_click(time) break except BaseException: Unpaid.DropDown.dropDown() Unpaid.click.click() except BaseException: self.assertEqual(0, 1, "待缴费单模块,测试未通过") def pay(self): try: base.name_click('支付') base.name_click('线下支付(现金)') Unpaid.DropDown.dropDown() i = random.randint(1, 1000) base.id_sendkey( 'com.facilityone.product.shang:id/multi_input_content_et', '缴费支付' + str(i)) base.driver.tap([(102, 1114)], 1) base.id_click( 'com.facilityone.product.shang:id/write_order_photo_tv') base.driver.implicitly_wait(300) base.id_click('com.facilityone.product.shang:id/cb_photo_lpsi') base.driver.implicitly_wait(0) base.name_click('确定') base.driver.implicitly_wait(300) base.name_click('确定') base.driver.implicitly_wait(0) Unpaid.Returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "待缴费单模块,支付测试未通过") def invalid(self): try: base.name_click('作废') i = random.randint(0, 1000) base.id_sendkey( 'com.facilityone.product.shang:id/work_order_verify_content_et', '作废' + str(i)) base.id_click( 'com.facilityone.product.shang:id/work_order_verify_sure_btn') Unpaid.Returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "待缴费单模块,作废测试未通过")
class uncompleted(unittest.TestSuite): woCreate = WCreated() Returnpage = Returnpage() dropdown = DropDown() click = Click() def __init__(self): super().__init__() def uncompleted(self, inf): try: try: base.name_click(u'待处理需求') except BaseException: try: base.name_click(u'服务台') base.name_click(u'待处理需求') except BaseException: base.name_click(u'工作') base.name_click(u'服务台') base.name_click(u'待处理需求') sleep(2) for i in range(100): try: base.name_click(inf) break except BaseException: uncompleted.dropdown.dropDown() sleep(1) # 数据信息没验证 no = base.id_text( 'com.facilityone.product.shang:id/service_demand_item_id_describe_tv' ) # print(no) return no except BaseException: self.assertEqual(0, 1, "待处理需求模块,测试未通过") def wo(self, no): try: # 创建工单 cp = configparser.SafeConfigParser() cp.read('base.ini', encoding='utf-8') try: uncompleted.click.click() except BaseException: base.name_click(no) uncompleted.click.click() sleep(2) base.name_click(u'生成工单') # 信息未验证 uncompleted.woCreate.create('需求') uncompleted.Returnpage.returnpage() sleep(1) uncompleted.Returnpage.returnpage() except BaseException: self.assertEqual(0, 1, "待处理需求模块,需求创建工单测试未通过") def save(self, no): try: i = random.randint(0, 1000) try: base.id_click( 'com.facilityone.product.shang:id/service_demand_item_handle_content_add_iv' ) except BaseException: base.name_click(no) base.id_click( 'com.facilityone.product.shang:id/service_demand_item_handle_content_add_iv' ) base.name_sendkey('请输入处理內容', '测试工作内容' + str(i)) base.name_click(u'保存') uncompleted.click.click() base.name_click(u'保存') except: self.assertEqual(0, 1, "待处理需求模块,保存测试未通过") def complete(self, no): try: try: uncompleted.click.click() except BaseException: base.name_click(no) uncompleted.click.click() base.name_click(u'完成') try: detail = base.id_text( 'com.facilityone.product.shang:id/actionbar_title_tv') if detail == "需求详情": print('该需求存在工单未完成') uncompleted.Returnpage.returnpage() except BaseException: print('需求已完成') except BaseException: self.assertEqual(0, 1, "待处理需求模块,完成测试未通过")