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 + '测试不通过')
Exemplo n.º 2
0
 def test_column_type_submit(self):
     '''列-操作类型-提交流程'''
     menu3 = '列表视图_列_操作类型_提交流程'
     mp = MainPhonePage(self.driver)
     mp.open_menus(self.menu1, self.menu2, menu3)  # 打开菜单
     lp = ListViewPhonePage(self.driver)
     lp.wait_Tabloading_show_then_hide()
     if lp.get_rows_total() != 0:
         lp.clear_all_data()
     
     lp.wait_Tabloading_show_then_hide()
     if lp.get_rows_total() == 0:
         lp.add_one_row()
      
     lp.wait_Tabloading_show_then_hide()
     if lp.get_rows_total() == 1:
         lp.click_submit()
     
     lp.wait_Tabloading_show_then_hide()
     lp.set_val_and_submit('请审批')
     lp.wait_Tabloading_show_then_hide()
     
     #点击行数据
     lp.open_fisrt_doc()
     lp.wait_Tabloading_show_then_hide()
     bp = ButtonPhonePage(self.driver)
     self.assertEqual(0, bp.is_button_exist('流程处理'), msg='列-操作类型-提交流程检验不通过')
    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 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_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_approver_role_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, '通过角色指定')
        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()  # 提交流程
        lp.open_fisrt_doc()  # 打开记录
        fp.click_flow_more()  # 点击流程栏更多
        self.assertEqual('通过iscript指定',
                         fp.get_cur_flow_state(),
                         msg=title + '测试不通过')  # 检查当前流程状态是不是通过iscript指定
    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 + '测试不通过')  # 检查当前流程状态是不是归档
Exemplo n.º 8
0
 def test_desription_case(self):
     '''描述'''
     lp = ListViewPhonePage(self.driver)
     lp.open_fisrt_doc()
     name = '流程历史_描述'
     comp = FlowhistoryPhonePage(self.driver, name)
     self.assertTrue(comp.is_desription_effect(name), msg=name + '检验不通过')
    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 + '测试不通过')  # 检查当前流程状态是不是通过角色指定
Exemplo n.º 10
0
 def test_desription_case(self):
     '''描述'''
     lp = ListViewPhonePage(self.driver)
     lp.open_fisrt_doc()
     name = '微信录音控件_描述'
     #time.sleep(0.5)
     comp = RecordPhonePage(self.driver, name)
     self.assertTrue(comp.is_desription_effect(name), msg=name + '检验不通过')
Exemplo n.º 11
0
 def test_flow_img_case(self):
     '''图表'''
     lp = ListViewPhonePage(self.driver)
     lp.open_fisrt_doc()
     name = '流程历史_图表'
     comp = FlowhistoryPhonePage(self.driver, name)
     self.assertTrue(comp.check_title(), msg=name + '检验不通过')
     self.assertTrue(comp.check_flow_img(), msg=name + '检验不通过')
Exemplo n.º 12
0
 def test_readonly_case(self):
     '''控件属性'''
     lp = ListViewPhonePage(self.driver)
     lp.open_fisrt_doc()
     name = '微信录音控件_只读条件'
     comp = RecordPhonePage(self.driver, name)
     #time.sleep(0.5)
     self.assertFalse(comp.check_del_icon(),
                      msg=name + '检验不通过')  #删除后音频文件不存在
Exemplo n.º 13
0
    def test_save_draft_btn(self):
        '''保存草稿按钮'''

        lp = ListViewPhonePage(self.driver)
        lp.open_fisrt_doc()  # 打开第一条数据
        bt = ButtonPhonePage(self.driver)
        lp.wait_Tabloading_show_then_hide()
        bt.click_button('保存草稿')  # 点击按钮
        self.assertEqual('[保存成功]', lp.get_msg(), msg='保存草稿按钮检验不通过')
Exemplo n.º 14
0
 def test_desription_case(self):
     '''描述'''
     compname = 'GPS定位_描述'
     comp = GPSPhonePage(self.driver)
     lp = ListViewPhonePage(self.driver)
     lp.open_fisrt_doc()  # 打开记录
     target_element = comp.getcomp(compname)
     comp.scroll_to_target_element(target_element)
     bool = comp.is_desription_effect(compname)
     self.assertTrue(bool, msg=compname + '检验不通过')
 def test_readonly_case(self):
     '''图片上传控件只读'''
     comp = FileUploadPhonePage(self.driver)
     name = '图片上传_只读'
     compname = '图片上传_只读'
     lp = ListViewPhonePage(self.driver)
     lp.open_fisrt_doc()  # 打开记录
     target = comp.getcomp(compname)
     comp.scroll_to_target_element(target)
     bool = comp.is_comp_readonly(compname)
     self.assertTrue(bool,msg=name + '检验不通过')
Exemplo n.º 16
0
 def test_readonly(self):
     '''只读'''
     menu3 = '列表视图_只读_是'
     mp = MainPhonePage(self.driver)
     mp.open_menus(self.menu1, self.menu2, menu3)  # 打开菜单
     lp = ListViewPhonePage(self.driver)
     lp.wait_Tabloading_show_then_hide()
     lp.open_fisrt_doc()
     lp.wait_Tabloading_show_then_hide()
     btn = ButtonPhonePage(self.driver)
     self.assertTrue(btn.is_button_exist('新建'), msg='非只读检验不通过')
    def test_non_polymerization_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 + '测试不通过')
        self.assertNotIn('经理', 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()  # 打开记录

        bt.click_button('提交')  # 点击提交按钮
        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 + '测试不通过')
        self.assertIn('经理', fp.get_curnode_user(), msg=title + '测试不通过')

        po.user_login('zjl01', '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 + '测试不通过')

        bt.click_button('提交')  # 点击提交按钮
        fp.flow_sumit()  # 提交流程

        lp.open_fisrt_doc()  # 打开记录
        fp.click_flow_more()  # 点击流程栏更多
        self.assertEqual('归档', fp.get_cur_flow_state(),
                         msg=title + '测试不通过')  # 检查当前流程状态是不是归档
Exemplo n.º 18
0
 def test_show_when_hide_case(self):
     '''隐藏时显示值'''
     compname = 'GPS定位_隐藏时显示值'
     comp = GPSPhonePage(self.driver)
     lp = ListViewPhonePage(self.driver)
     lp.open_fisrt_doc()  # 打开记录
     target_element = comp.getcomp(compname)
     comp.scroll_to_target_element(target_element)
     bool = comp.is_comp_hide(compname)
     self.assertFalse(bool, msg=compname + '检验不通过')
     self.assertIn('控件已隐藏', comp.get_curpage_span(), msg=compname + '检验不通过')
 def test_type_case(self):
     '''图片上传类型'''
     comp = FileUploadPhonePage(self.driver)
     lp = ListViewPhonePage(self.driver)
     name = '图片上传类型'
     compname = '图片上传_名称'
     lp.open_fisrt_doc()  # 打开记录
     target_element = comp.getcomp(compname)
     comp.scroll_to_target_element(target_element)
     type = target_element.get_attribute("fieldtype")
     self.assertEqual(type,"ImageUploadField", msg=name + '检验不通过')
Exemplo n.º 20
0
 def test_type_case(self):
     '''控件属性'''
     lp = ListViewPhonePage(self.driver)
     lp.open_fisrt_doc()
     name = '微信录音控件_名称'
     #time.sleep(0.5)
     comp = RecordPhonePage(self.driver, name)
     self.assertNotEqual('none', comp.get_the_div(), msg=name + '检验不通过')
     self.assertNotEqual('none', comp.get_the_audio(), msg=name + '检验不通过')
     self.assertEqual('none', comp.check_del_function(),
                      msg=name + '检验不通过')  #删除后音频文件不存在
Exemplo n.º 21
0
 def test_type_case(self):
     '''GPS定位类型'''
     comp = GPSPhonePage(self.driver)
     lp = ListViewPhonePage(self.driver)
     name = 'GPS定位类型'
     compname = 'GPS定位_名称'
     lp.open_fisrt_doc()  # 打开记录
     target_element = comp.getcomp(compname)
     comp.scroll_to_target_element(target_element)
     type = target_element.get_attribute("moduletype")
     self.assertEqual(type, "weixingpsfield", msg=name + '检验不通过')
 def test_type_case(self):
     '''描述'''
     lp = ListViewPhonePage(self.driver)
     lp.open_fisrt_doc()
     name = '流程催办历史_描述'
     comp = FlowRemindHistoryPhonePage(self.driver, name)
     self.assertEqual('序号',
                      comp.get_table_head_first_td_text(),
                      msg=name + '检验不通过')
     self.assertEqual('1',
                      comp.get_table_tbody_first_td_text(),
                      msg=name + '检验不通过')
Exemplo n.º 23
0
 def test_text_list_case(self):
     '''文本列表'''
     lp = ListViewPhonePage(self.driver)
     lp.open_fisrt_doc()
     name = '流程历史_文本列表'
     comp = FlowhistoryPhonePage(self.driver, name)
     self.assertTrue(comp.check_title(), msg=name + '检验不通过')
     self.assertEqual('审批节点',
                      comp.get_table_head_first_td_text(),
                      msg=name + '检验不通过')
     self.assertEqual('申请人',
                      comp.get_table_tbody_first_td_text(),
                      msg=name + '检验不通过')
Exemplo n.º 24
0
    def test_user_defined_close_btn(self):
        '''自定义关闭按钮'''

        menu3 = '表单按钮_自定义按钮'
        mp = MainPhonePage(self.driver)
        mp.open_menus(self.menu1, self.menu2, menu3)  # 打开菜单
        lp = ListViewPhonePage(self.driver)
        lp.open_fisrt_doc()  #打开第一条数据
        bt = ButtonPhonePage(self.driver)
        bt.click_button('自定义关闭')  #点击按钮

        msgtitle = lp.get_msg()  #获取消息
        self.assertEqual('[自定义关闭成功]', msgtitle, msg='自定义关闭按钮检验不通过')
Exemplo n.º 25
0
    def test_save_draft_btn(self):
        '''保存草稿按钮'''

        menu3 = '表单按钮_保存类'
        mp = MainPhonePage(self.driver)
        mp.open_menus(self.menu1, self.menu2, menu3)  # 打开菜单
        lp = ListViewPhonePage(self.driver)
        lp.open_fisrt_doc()  #打开第一条数据
        bt = ButtonPhonePage(self.driver)
        bt.click_button('保存草稿')  #点击按钮

        msgtitle = lp.get_msg()  #获取消息
        self.assertEqual('[保存成功]', msgtitle, msg='保存草稿按钮检验不通过')
Exemplo n.º 26
0
    def test_user_defined_jump_btn(self):
        '''自定义跳转按钮'''

        menu3 = '表单按钮_自定义按钮'
        mp = MainPhonePage(self.driver)
        mp.open_menus(self.menu1, self.menu2, menu3)  # 打开菜单
        lp = ListViewPhonePage(self.driver)
        lp.wait_Tabloading_show_then_hide()
        lp.open_fisrt_doc()  #打开第一条数据
        bt = ButtonPhonePage(self.driver)
        bt.click_button('自定义跳转列表')  #点击按钮
        msgtitle = lp.get_msg()  #获取消息
        self.assertEqual('[自定义跳转列表成功]', msgtitle, msg='自定义跳转按钮检验不通过')
        self.assertEqual('保存', lp.get_column_row1_col2(), msg='自定义跳转按钮检验不通过')
    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 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_Hang_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('挂起')
        bool2 = bt.is_button_exist('恢复')  # 查看有没有恢复按钮
        self.assertTrue(bool2, msg=title + "测试不通过")

        bt.click_button('恢复')
        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_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='编辑流程审批人测试不通过')