Example #1
0
    def setUpClass(self):
        self.driver = browser()
        self.driver.maximize_window()

        # 登录页面
        po = LoginPage(self.driver)
        po.user_login('liling', '123456')
    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_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_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_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 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_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_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_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_freeflow_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)
        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('取消')  # 点击取消按钮
        self.assertTrue(bt.is_button_exist('提交'), msg=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()  # 打开记录

        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_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_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='编辑流程审批人测试不通过')
Example #14
0
 def test_login(self):
     '''用户名、密码'''
     po = LoginPage(self.driver)
     po.user_login('liling', '123456')
     self.assertIn('天翎', self.driver.title)
Example #15
0
 def setUp(self):
     mp = MainPhonePage (self.driver)
     po = LoginPage(self.driver)
     po.user_login('liling', '123456')  # 切换李玲登陆
     mp.switch_to_menu_page ()
     mp.open_menus (self.menu1, self.menu2, self.menu3)
Example #16
0
    def setUpClass(self):
        self.driver = phone_browser()
        self.driver.maximize_window()

        po = LoginPage(self.driver)
        po.user_login()
Example #17
0
 def test_login(self):
     '''用户名、密码'''
     po = LoginPage(self.driver)
     po.user_login()
     self.assertEqual('自动化测试系统', self.driver.title, msg='登录校验不通过')