def test_select_usefulopinions_case(self): '''选择常用意见''' bt = ButtonPhonePage(self.driver) lp = ListViewPhonePage(self.driver) lp.wait_Tabloading_show_then_hide() if lp.get_rows_total() != 0: lp.clear_all_data() # 清除数据 bt.click_button('新建') # 点击按钮 lp.wait_Tabloading_show_then_hide() bt.click_button('提交') # 点击按钮 fsp = FlowSubmitPanelPage(self.driver) fsp.click_usefulopinions() # 展开常用意见 fsp.wait_elem_visible('.flow-submit__proposal-box') fsp.select_usefulopinions('同意') # 选择意见 self.assertEqual('同意', fsp.get_usefulopinions(), msg='选择常用意见校验不通过') fsp.click_usefulopinions() # 收起常用意见 bt.click_flowpanel_button('提交') # 点击按钮 mp = MainPhonePage(self.driver) lp.wait_msg_show_then_hide() lp.wait_Tabloading_show_then_hide() mp.return_to_homepage() # 返回主页 mp.switch_to_flow_page() # 切换到流程面板 mp.switch_flow_center_byname('经办') # 点击切换到经办页面 mp.click_processing_first_data() # 点击经办第一条数据 fp = FlowPhonePage(self.driver) fp.click_flow_more() # 点击更多切换到流程历史 self.assertEqual('同意', fp.get_flow_history_useopinions(), msg='选择常用意见校验不通过')
def test_skipprocess_case(self): """流程节点跳过""" menu2 = '审批送出设置' # 主页打开菜单时使用 menu3 = '流程节点跳过' title = '流程节点跳过' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) po = LoginPage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 fp.flow_sumit() # 提交流程 time.sleep(10) lp.open_fisrt_doc() # 打开记录 fp.click_flow_more() # 点击流程栏更多 self.assertEqual('归档', fp.get_cur_flow_state(), msg=title + '测试不通过') # 检查当前流程状态是不是归档
def test_freeflow_backoff_case(self): '''自由流程回退''' menu2 = '自由流程' # 主页打开菜单时使用 menu3 = '' title = '自由流程回退' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) us = UserSelectPhonePage(self.driver, 'free_flow') po = LoginPage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 fp.click_flow_submit_user_avatar() # 点击选择流程审批人 us.select_user_by_name('王聪') bt.click_flowpanel_button('发起') # 提交流程 lp.open_fisrt_doc() # 打开记录 self.assertEqual('王聪', fp.get_curnode_user(), msg=title + '测试不通过') po.user_login('wangcong', '123456') # 切换王聪登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bt.click_button('回退') # 点击提交按钮 fp.click_flow_submit_user_avatar() # 点击选择流程审批人 self.assertIn('李玲', us.get_all_noAvatar_name(), msg=title + '测试不通过') self.assertNotIn('王聪', us.get_all_noAvatar_name(), msg=title + '测试不通过') us.select_user_by_name('李玲') bt.click_flowpanel_button('回退') lp.open_fisrt_doc() # 打开记录 self.assertEqual('李玲', fp.get_curnode_user(), msg=title + '测试不通过') self.assertFalse(bt.is_button_exist('提交'), msg=title + '测试不通过') self.assertFalse(bt.is_button_exist('回退'), msg=title + '测试不通过') self.assertFalse(bt.is_button_exist('结束流程'), msg=title + '测试不通过') po.user_login('liling', '123456') # 切换李玲登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 self.assertTrue(bt.is_button_exist('提交'), msg=title + '测试不通过') self.assertTrue(bt.is_button_exist('回退'), msg=title + '测试不通过') self.assertTrue(bt.is_button_exist('结束流程'), msg=title + '测试不通过')
def test_freeflow_complete(self): '''自由流程结束流程''' menu2 = '自由流程' # 主页打开菜单时使用 menu3 = '' title = '自由流程结束流程' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) us = UserSelectPhonePage(self.driver, 'free_flow') po = LoginPage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 fp.click_flow_submit_user_avatar() # 点击选择流程审批人 us.select_user_by_name('王聪') bt.click_flowpanel_button('发起') # 提交流程 lp.open_fisrt_doc() # 打开记录 self.assertEqual('王聪', fp.get_curnode_user(), msg=title + '测试不通过') po.user_login('wangcong', '123456') # 切换王聪登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bt.click_button('结束流程') # 点击提交按钮 bt.click_flowpanel_button('结束') lp.open_fisrt_doc() # 打开记录 fp.click_flow_more() # 点击流程栏更多 self.assertEqual('完成', fp.get_cur_flow_state(), msg=title + '测试不通过') # 检查当前流程状态是不是归档
def test_editApprover_case(self): """允许编辑当前节点的审批人""" menu2 = '基本信息' menu3 = '允许编辑当前节点的审批人' title = '允许编辑当前节点的审批人' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') fp.flow_sumit() # 提交流程 po = LoginPage(self.driver) po.user_login('zhangqiang', '123456') # 切换张强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bool = bt.is_button_exist('编辑流程审批人') # 查看有没有编辑流程审批人按钮 self.assertTrue(bool, msg="编辑流程审批人测试不通过") bt.click_button('编辑流程审批人') mp.select_user_by_name_for_form('伟强') po.user_login('weiqiang', '123456') # 切换伟强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bool2 = bt.is_button_exist('编辑流程审批人') # 查看有没有编辑流程审批人按钮 self.assertTrue(bool2, msg="编辑流程审批人测试不通过") bt.click_button('提交') fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 self.assertTrue(fp.is_flow_end(), msg='编辑流程审批人测试不通过')
def test_Fallback_case(self): '''流程回退''' menu2 = '流程通知' # 主页打开菜单时使用 menu3 = '流程回退' title = '流程回退' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) po = LoginPage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 self.assertIn('张强', fp.get_curnode_user(), msg=title + '测试不通过') po.user_login('zhangqiang', '123456') # 切换张强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bool = bt.is_button_exist('回退') # 查看有没有提交按钮 self.assertTrue(bool, msg=title + "测试不通过") bt.click_button('回退') bt.click_flowpanel_button('回退') lp.open_fisrt_doc() # 打开记录 self.assertEqual('李玲', fp.get_curnode_user(), msg=title + '测试不通过') bool = bt.is_button_exist('回退') # 查看有没有提交按钮 self.assertFalse(bool, msg=title + "测试不通过") boo2 = bt.is_button_exist('提交') # 查看有没有提交按钮 self.assertFalse(boo2, msg=title + "测试不通过")
def test_adjustment_process_case(self): """前台手动调整流程""" menu2 = '基本信息' menu3 = '前台手动调整流程' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) lp.clear_all_data() # 清空所有数据 bt = ButtonPhonePage(self.driver) bt.click_button('新建') # 点击新建按钮 fp.input_reason('前台手动调整流程') # 录入请假原因 bt.click_button('保存') # 点击保存并启动流程按钮 fp.wait_msg_show_then_hide() bool = bt.is_button_exist('流程调整') self.assertFalse(bool, msg="前台手动调整流程测试不通过")
def test_retreat_case(self): '''流程回撤''' menu2 = '流程通知' # 主页打开菜单时使用 menu3 = '流程回撤' title = "流程回撤" self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) po = LoginPage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 self.assertIn('张强', fp.get_curnode_user(), msg=title + '测试不通过') self.assertTrue(bt.is_button_exist('回撤'), msg=title + '测试不通过') bt.click_button('回撤') self.assertIn('李玲', fp.get_curnode_user(), msg=title + '测试不通过') self.assertFalse(bt.is_button_exist('回撤'), msg=title + '测试不通过') self.assertTrue(bt.is_button_exist('提交'), msg=title + '测试不通过') bt.click_button('提交') # 点击提交按钮 fp.flow_sumit() # 提交流程 po.user_login('zhangqiang', '123456') # 切换张强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bt.click_button('提交') # 点击提交按钮 fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 fp.click_flow_more() # 点击流程栏更多 self.assertEqual('归档', fp.get_cur_flow_state(), msg=title + '测试不通过') # 检查当前流程状态是不是归档
def test_termination_case(self): """允许审批人终止流程""" menu2 = '基本信息' # 主页打开菜单时使用 menu3 = '允许审批人终止流程' title = '允许审批人终止流程' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') fp.flow_sumit() # 提交流程 po = LoginPage(self.driver) po.user_login('zhangqiang', '123456') # 切换张强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bool = bt.is_button_exist('终止流程') # 查看有没有编辑流程审批人按钮 self.assertTrue(bool, msg=title + "测试不通过") bt.click_button('终止流程') # 点击终止流程按钮 fp.sendkey_in_confirmPanel_textarea('终止流程') fp.click_flow_more() # 点击流程栏更多 self.assertEqual('终止', fp.get_cur_flow_state(), msg=title + '测试不通过') # 检查当前流程状态是不是终止
def default_notcheck_case(self): """并行默认不选中""" menu2 = '流程并行' # 主页打开菜单时使用 menu3 = '并行默认不选中' title = '并行默认不选中' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) us = UserSelectPhonePage(self.driver) po = LoginPage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 self.assertNotIn(True, fp.get_nodes_checked_stable(), msg=title + '测试不通过') fp.flow_sumit() # 提交流程 self.assertIn('请选择一项操作', fp.is_alert_exist(), msg=title + '测试不通过') fp.accept_alert() # 接受alert fp.find_elem( '#flow-submit__node-box > div:nth-child(4) > label > div.weui-cell__hd > i' ).click() # 点击 第一个流程节点状态使他成为选中 fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 self.assertNotIn('张强', fp.get_curnode_user(), msg=title + '测试不通过') self.assertIn('王聪', fp.get_curnode_user(), msg=title + '测试不通过') self.assertIn('伟强', fp.get_curnode_user(), msg=title + '测试不通过') po.user_login('weiqiang', '123456') # 切换伟强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bool = bt.is_button_exist('提交') # 查看有没有提交按钮 self.assertTrue(bool, msg=title + "测试不通过") bt.click_button('提交') fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 fp.click_flow_more() # 点击流程栏更多 self.assertEqual('归档', fp.get_cur_flow_state(), msg=title + '测试不通过') # 检查当前流程状态是不是归档
def test_default_check_case(self): """并行默认选中""" menu2 = '流程并行' # 主页打开菜单时使用 menu3 = '并行默认选中' title = '并行默认选中' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) po = LoginPage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 self.assertNotIn(False, fp.get_nodes_checked_stable(), msg=title + '测试不通过') fp.find_elem( '#flow-submit__node-box > div:nth-child(4) > label > div.weui-cell__hd > i' ).click() # 点击 第一个流程节点状态使他成为未选中 self.assertFalse(fp.get_nodes_checked_stable()[0], msg=title + '测试不通过') fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 self.assertIn('张强', fp.get_curnode_user(), msg=title + '测试不通过')
def test_ccForRole_case(self): '''流程抄送通过角色''' menu2 = '抄送设置' # 主页打开菜单时使用 menu3 = '流程抄送' title = "流程抄送通过角色" self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) us = UserSelectPhonePage(self.driver, 'copyto_user_select') po = LoginPage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 fp.click_flow_copyTo() # 点击选择抄送人 self.assertTrue(fp.is_flow_copyTo_exsit(), msg=title + '测试不通过') us.select_user_by_name('伟强') fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 fp.click_flow_more() # 点击流程栏更多 self.assertEqual('归档', fp.get_cur_flow_state(), msg=title + '测试不通过') # 检查当前流程状态是不是归档
def test_arbitrarily_adopt_case(self): '''任意审批人通过则节点通过''' menu2 = '流程节点通过条件' # 主页打开菜单时使用 menu3 = '任意审批人通过则节点通过' title = "任意审批人通过则节点通过" self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) po = LoginPage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 self.assertIn('王聪', fp.get_curnode_user(), msg=title + '测试不通过') self.assertIn('伟强', fp.get_curnode_user(), msg=title + '测试不通过') self.assertIn('张强', fp.get_curnode_user(), msg=title + '测试不通过') po.user_login('zhangqiang', '123456') # 切换张强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bool = bt.is_button_exist('提交') # 查看有没有提交按钮 self.assertTrue(bool, msg=title + "测试不通过") po.user_login('weiqiang', '123456') # 切换伟强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bool = bt.is_button_exist('提交') # 查看有没有提交按钮 self.assertTrue(bool, msg=title + "测试不通过") po.user_login('wangcong', '123456') # 切换伟强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bool = bt.is_button_exist('提交') # 查看有没有提交按钮 self.assertTrue(bool, msg=title + "测试不通过") bt.click_button('提交') # 点击提交按钮 fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 fp.click_flow_more() # 点击流程栏更多 self.assertEqual('归档', fp.get_cur_flow_state(), msg=title + '测试不通过') # 检查当前流程状态是不是归档 po.user_login('weiqiang', '123456') # 切换伟强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bool = bt.is_button_exist('提交') # 查看有没有提交按钮 self.assertFalse(bool, msg=title + "测试不通过")
def test_timeout_submit_case(self): """超时自动提交""" menu2 = '审批时限设置' # 主页打开菜单时使用 menu3 = '审批超时自动提交' title = '审批超时自动提交' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) po = LoginPage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 fp.click_flow_more() # 点击流程栏更多 self.assertEqual('审批人', fp.get_cur_flow_state(), msg=title + '测试不通过') # 检查当前流程状态是不是审批人 po.user_login('liling', '123456') # 切换李玲登陆 time.sleep(60) mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 fp.click_flow_more() # 点击流程栏更多 self.assertEqual('归档', fp.get_cur_flow_state(), msg=title + '测试不通过') # 检查当前流程状态是不是归档
def test_approver_iscript_case(self): '''流程审批人for_iscript形式''' menu2 = '审批人设置' # 主页打开菜单时使用 menu3 = '' title = '流程审批人for_iscript形式' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) us = UserSelectPhonePage(self.driver, '通过角色指定') po = LoginPage(self.driver) lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 fp.click_flow_submit_user_avatar() # 点击选择流程审批人 us.select_user_by_name('伟强') fp.flow_sumit() # 提交流程 po.user_login('weiqiang', '123456') # 切换伟强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bt.click_button('提交') # 点击提交按钮 fp.flow_sumit() # 提交流程 po.user_login('zhangqiang', '123456') # 切换张强登陆 mp.switch_to_menu_page() self.open_menus(self.menu1, menu2, menu3) # 打开相应的菜单 lp.open_fisrt_doc() # 打开记录 bt.click_button('提交') # 点击提交按钮 fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 fp.click_flow_more() # 点击流程栏更多 self.assertEqual('归档', fp.get_cur_flow_state(), msg=title + '测试不通过') # 检查当前流程状态是不是归档
def test_approver_organization_case(self): '''流程审批人for组织形式''' menu2 = '审批人设置' # 主页打开菜单时使用 menu3 = '' title = '流程审批人for组织形式' self.open_menus(self.menu1, menu2, menu3) fp = FlowPhonePage(self.driver) lp = ListViewPhonePage(self.driver) mp = MainPhonePage(self.driver) bt = ButtonPhonePage(self.driver) us = UserSelectPhonePage(self.driver, '通过角色指定') lp.clear_all_data() # 清空所有数据 bt.click_button('新建') # 点击新建按钮 fp.input_reason(title) # 录入请假原因 bt.click_button('提交') # 点击提交按钮 fp.click_flow_submit_user_avatar() # 点击选择流程审批人 us.select_user_by_name('伟强') fp.flow_sumit() # 提交流程 lp.open_fisrt_doc() # 打开记录 fp.click_flow_more() # 点击流程栏更多 self.assertEqual('通过角色指定', fp.get_cur_flow_state(), msg=title + '测试不通过') # 检查当前流程状态是不是通过角色指定