Example #1
0
    def test_OA首页显示是否正常_期望显示当前登录用户名(self):

        Common.get_url_pagehome()
        home = Home()
        self.assertTrue(home.home_link_text('首页'), '首\页链接显示错误')
        self.assertTrue(home.username_text(username), '导航栏右侧用户姓名显示错误')
        api.save_page_img_2_report('首页截图')
        api.close_window_retain_one()
Example #2
0
 def test_as_addworkorder(self):
     '''查看首页是否显示正常'''
     try:
         api.get(as_work_order_list)
         as_workorder = ASWorkOrder()
         as_workorder.add_work_order(cpno)
         time.sleep(10)
     except:
         log.exception()
Example #3
0
 def test_OA0_登录_期望接口登录成功(self):
     api.get(login_url)
     res = api.driver.get_cookies()
     cookie = res[0]['name'] + '=' + res[0]['value']
     api.cookie = cookie
     Common.oa_api_login(cookie)
     api.driver.add_cookie({
         'name': 'h3bpmportal',
         'value': res[0]['value']
     })
Example #4
0
 def home_link_text(self, expect_value):
     """
     获取首页链接文本
     :return:
     """
     if api.wait_text_equal(self.home_link, expect_value):
         return True
     else:
         api.save_page_img('首页链接文本显示错误')
         return False
Example #5
0
 def username_text(self, expect_value):
     """
     获取导航栏右侧的用户姓名
     :return:
     """
     if api.wait_text_equal(self.username, expect_value):
         return True
     else:
         api.save_page_img('首页用户名显示错误')
         return False
Example #6
0
    def setUpClass(cls):
        """
        测试固件的setUp()的代码,主要是测试的前提准备工作
        :return:
        """
        driver_init = DriverInit(is_headless=False)
        cls.driver = driver_init.driver
        api.driver = driver_init.driver
        api.get(as_work_order_list)

        token = Common.zhengt_yun_login()
        log.info('正通云平台token的值为[%s]'%token)
        api.driver.add_cookie({'name': 'token', 'value': token})
Example #7
0
 def test_OA流程中心发起审批任务是否正常_期望新建审批任务成功(self):
     Common.get_url_pagehome()
     home = Home()
     home.click_workflow_center_link()
     api.switch_new_window()
     workflow = WorkflowCenter()
     total_start = workflow.get_count_of_my_initiate()
     log.info('未添加流程之前,我拟办的总数量个数:%d' % total_start)
     workflow.click_add_workflow_link()
     self.assertTrue(workflow.workflow_list_item_len_gt_0(), '流程列表数据显示错误')
     workflow.click_test_workflow_link()
     workflow.click_speed_test_workflow_link()
     api.switch_new_window()
     workflow.wait_speed_test_form_title_display()
     workflow.send_text_speed_test_form_name_input('王志山')
     workflow.select_mobile_speed_test_form_mobile_select()
     api.save_page_img_2_report('新增审批流程页面截图')
     workflow.click_speed_test_form_submit_btn()
     time.sleep(1)
     workflow.accept_alert()
     time.sleep(1)
     workflow.accept_alert()
     total_end = workflow.get_count_of_my_initiate()
     log.info('添加流程之后,我拟办的总数量个数:%d' % total_end)
     self.assertTrue((total_end - total_start == 1), '新增失败')
     api.close_window_retain_one()
Example #8
0
 def wrapper(self):
     log.info('*' * 30 + f.__name__ + '*' * 30)
     log.info('开始执行用例[%s]' % f.__name__)
     try:
         f(self)
     except Exception as e:
         DriverApi.save_page_img(f.__name__)
         log.exception(e)
         self.fail()
         raise e
     finally:
         log.info('执行用例[%s]完成' % f.__name__)
         log.info('*' * 30 + f.__name__ + '*' * 30)
         log.info('\n\n')
Example #9
0
 def news_list_item_article_len_gt_0(self):
     """
     判断新闻列表页选项简介长度是否大于0
     :return:
     """
     self.news_list_first_item_name_exist()
     elements = self.news_list_article_els()
     for el in elements:
         el_text = el.text
         logger().info('新闻列表选项简介:%s' % el_text)
         if el_text is None or len(el_text) == 0:
             api.save_page_img('新闻列表选项简介长度等于0')
             return False
     return True
Example #10
0
 def list_text(self):
     if api.el_is_display(self.unfinish_workflow_list_has_data):
         text = api.get_text(self.unfinish_workflow_list_has_data)
         logger().info('待办任务列表选项标题:%s' % text)
         if len(text) > 0:
             return True
         else:
             return False
     elif api.get_text(
             self.unfinish_workflow_list_no_data) == '您的待办已经全部处理完成':
         return True
     else:
         api.save_page_img('待办列表显示错误')
         return False
Example #11
0
 def workflow_form_liushihao_text_valide(self):
     """
     验证流程新建成功后,生成一个流水号
     :return:
     """
     return api.wait_text_contains(self.speed_test_form_liushuihao_no,
                                   time.strftime("%Y%m"))
Example #12
0
 def click_my_initiate_link(self):
     """
     点击我拟办的链接
     :return:
     """
     js = '$("ul.navleft >li:eq(3) > a").click()'
     for i in range(10):
         try:
             api.execute_script(js)
             if api.get_current_url().find(
                     '/app/Workflow/MyInstance') != -1:
                 logger().info('页面跳转成功')
                 break
         except:
             pass
         time.sleep(2)
Example #13
0
 def click_add_workflow_link(self):
     """
     点击新建流程链接
     :return:
     """
     js = '$("ul.navleft >li:eq(5) > a").click()'
     for i in range(10):
         try:
             api.execute_script(js)
             if api.get_current_url().find('/app/Workflow/MyWorkflow'
                                           ) != -1 and api.el_is_display(
                                               self.test_workflow_link):
                 logger().info('页面跳转成功')
                 break
         except:
             pass
         time.sleep(2)
Example #14
0
 def test_OA流程中心我的代办是否显示正常_期望列表数据大于等于0(self):
     """查看流程中心是否显示正常"""
     Common.get_url_pagehome()
     home = Home()
     home.click_workflow_center_link()
     api.switch_new_window()
     workflow = WorkflowCenter()
     self.assertTrue(workflow.list_text(), '列表数据显示错误')
     api.save_page_img_2_report('我的代办页面截图')
     api.close_window_retain_one()
Example #15
0
    def test_OA新闻中心显示是否正常_期望新闻列表数据标题简介长度大于0(self):

        Common.get_url_pagehome()
        home = Home()
        home.click_group_news_link()
        api.switch_new_window()
        news = GroupNews()
        self.assertTrue(news.news_list_item_name_len_gt_0(), '新闻列表选项标题长度等于0')
        self.assertTrue(news.news_list_item_article_len_gt_0(),
                        '新闻列表选项简介长度等于0')
        api.save_page_img_2_report('新闻中心截图')
        api.close_window_retain_one()
Example #16
0
 def test_OA通知页面显示是否正常_期望列表数据标题发布者长度大于0(self):
     Common.get_url_pagehome()
     home = Home()
     home.click_notices_link()
     api.switch_new_window()
     notice = Notice()
     self.assertTrue(notice.notice_list_item_title_len_gt_0(),
                     '通知列表选项标题长度等于0')
     self.assertTrue(notice.notice_list_item_publish_time_len_gt_0(),
                     '通知列表选项标题长度等于0')
     self.assertTrue(notice.notice_list_item_publisher_len_gt_0(),
                     '通知列表选项标题长度等于0')
     api.save_page_img_2_report('通知页面截图')
     api.close_window_retain_one()
Example #17
0
 def news_list_article_els(self):
     """
     新闻列表选项标题
     :return:
     """
     return api.wait_find_elements(self.news_list_article)
Example #18
0
 def send_cpno_in_select_cpno_window(self, cpno):
     """在选择车牌弹出中输入车牌号"""
     api.send_text(self.select_cpno_window_cpno_input, cpno)
Example #19
0
 def news_list_first_item_name_exist(self):
     """
     新闻列表选项标题
     :return:
     """
     return api.wait_find_elements(self.news_list_first_item_name)
Example #20
0
 def select_mobile_speed_test_form_mobile_select(self):
     api.click_element(self.speed_test_form_mobile_select)
Example #21
0
 def click_search_btn_in_select_cpno_window(self):
     """在选择车牌弹窗中点击搜索按钮"""
     api.click_element(self.select_cpno_window_search_btn)
Example #22
0
 def click_speed_test_form_submit_btn(self):
     api.click_element(self.speed_test_form_submit_btn)
Example #23
0
 def send_text_speed_test_form_name_input(self, name):
     api.send_text(self.speed_test_form_name_input, name)
Example #24
0
 def wait_speed_test_form_title_display(self):
     api.el_is_display(self.speed_test_form_title)
Example #25
0
 def click_select_cpno_btn(self):
     """点击选择车牌按钮"""
     api.click_element(self.select_cpno_btn)
Example #26
0
 def click_table_first_in_select_cpno_window(self):
     """在选择车牌弹窗中点击第一个搜索结果"""
     api.click_element(self.select_cpno_window_table_first_radio)
Example #27
0
 def click_enter_btn_in_select_cpno_window(self):
     """在选择车牌弹窗中点击确定按钮"""
     api.click_element(self.select_cpno_window_enter_btn)
Example #28
0
 def workflow_list_items(self):
     return api.wait_find_elements(self.add_workflow_list)
Example #29
0
 def get_url_pagehome():
     """判断当前页面地址是否为首页,非首页则跳转到首页"""
     if DriverApi.get_current_url() == index_url:
         return
     else:
         DriverApi.get(index_url)
Example #30
0
 def click_speed_test_workflow_link(self):
     api.click_element(self.speed_test_workflow_link)