예제 #1
0
    def test_sy_jgq_p0_004(self):
        "首页金刚区-风险信息,全部只做入口校验"
        self.log.info(self.test_sy_jgq_p0_004.__doc__)
        try:
            # ========== 知识产权 ==========
            # 滑动一屏,确保下面的维度可点击
            self.operation.mobile_swipe(direction='up')

            # 查商标
            self.server_oper.check_title(server_name="查商标", diff_con="查商标")
            self.preprocessing.backtrack()

            # 专利
            self.server_oper.check_text_field(server_name="专利",
                                              diff_con="请输入专利名、专利号或企业名称")
            self.preprocessing.backtrack()

            # 著作权
            self.server_oper.check_text_field(server_name="著作权",
                                              diff_con="请输入著作权名、登记号或企业名")
            self.preprocessing.backtrack()

            # 网址
            self.server_oper.check_text_field(server_name="网址",
                                              diff_con="请输入公司名称或网址名称")
            self.preprocessing.backtrack()

        except AssertionError as ae:
            self.log.error(error_format(ae))
            raise self.failureException()
        except Exception as e:
            self.log.error(error_format(e))
            raise e
예제 #2
0
    def test_sy_jgq_p0_002(self):
        "首页金刚区-企业信息,全部只做入口校验"
        self.log.info(self.test_sy_jgq_p0_002.__doc__)
        try:
            # ========== 企业信息 ==========
            # 招聘
            self.server_oper.check_text_field(server_name="招聘",
                                              diff_con="请输入企业名称行业或职位")
            self.preprocessing.backtrack()

            # 招投标
            self.server_oper.check_text_field(server_name="招投标",
                                              diff_con="请输入企业名称")
            self.preprocessing.backtrack()

            # 债券
            self.server_oper.check_text_field(server_name="债券",
                                              diff_con="请输入发行人、债券代码或名称")
            self.preprocessing.backtrack()

            # 查税号
            self.server_oper.check_text_field(server_name="查税号",
                                              diff_con="请输入企业名称或统一信用代码")
            self.preprocessing.backtrack()

            # 中国香港企业
            self.server_oper.check_text_field(server_name="中国香港企业",
                                              diff_con="请输入企业名称")
            self.preprocessing.backtrack()

            # 中国台湾企业
            self.server_oper.check_text_field(server_name="中国台湾企业",
                                              diff_con="请输入企业名称")
            self.preprocessing.backtrack()

            # 社会组织
            self.server_oper.check_text_field(server_name="社会组织",
                                              diff_con="请输入社会组织名称")
            self.preprocessing.backtrack()

            # 律师事务所
            self.server_oper.check_text_field(server_name="律师事务所",
                                              diff_con="请输入律师事务所名称")
            self.preprocessing.backtrack()

        except AssertionError as ae:
            self.log.error(error_format(ae))
            raise self.failureException()
        except Exception as e:
            self.log.error(error_format(e))
            raise e
    def test_sy_jgq_tyc_map_004(self):
        "首页金刚区-热门功能-天眼地图,校验全部行业随机选择"
        self.log.info(self.test_sy_jgq_tyc_map_004.__doc__)
        try:
            self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                       "全部行业").click()
            random_name = self.preprocessing.random_options(
                find_type=MobileBy.IOS_CLASS_CHAIN,
                find_element=self.excel['ty_map_area_one'])
            self.preprocessing.random_options(
                find_type=MobileBy.IOS_CLASS_CHAIN,
                find_element=self.excel['ty_map_area_two'],
                x=0.46)

            if random_name != "国际组织":
                search_count = self.operation.get_count(
                    find_type=MobileBy.IOS_CLASS_CHAIN,
                    find_element=self.excel['ty_map_search_label'])
                self.assertIsNot(search_count, 0, "未匹配到搜索结果数")
            else:
                search_text = self.operation.new_element(
                    MobileBy.IOS_CLASS_CHAIN,
                    self.excel['ty_map_search_label']).text
                diff_text = "当前范围内没有发现公司,换个位置试试"
                self.assertEqual(
                    diff_text, search_text,
                    "预期文案:{},实际文案:{}".format(diff_text, search_text))

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
    def test_sy_jgq_aroundf_boss_001(self):
        "首页金刚区-热门功能-身边老板,通讯录中没有号码,检验 占位标识"
        self.log.info(self.test_sy_jgq_aroundf_boss_001.__doc__)
        try:
            diff_remind = "没有发现通讯录中的老板"
            find_remind = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN,
                self.excel['aroundf_boss_remind']).text
            self.assertEqual(diff_remind, find_remind,
                             "预期值:{},实际值:{}".format(diff_remind, find_remind))

            diff_recommend = "为你推荐"
            find_recommend = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN,
                self.excel['aroundf_boss_recommend']).text
            self.assertEqual(
                diff_recommend, find_recommend,
                "预期值:{},实际值:{}".format(diff_recommend, find_recommend))

            diff_monitor_button = "一键监控"
            find_monitor_button = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN,
                self.excel["aroundf_boss_monitor_button"]).text
            self.assertEqual(
                diff_monitor_button, find_monitor_button,
                "预期值:{},实际值:{}".format(diff_monitor_button,
                                       find_monitor_button))

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
    def test_sy_jgq_search_phone_001(self):
        "首页金刚区-热门功能-找电话,校验热门搜索分栏是否存在,并从热搜进入"
        self.log.info(self.test_sy_jgq_search_phone_001.__doc__)
        try:
            # 校验标签
            hot_search = "热门搜索"
            hot_title = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN, self.excel['hot_search']).text
            self.assertEqual(hot_search, hot_title,
                             "预期值:{},实际值:{}".format(hot_search, hot_title))

            # 判断 热搜 个数
            hot_set = self.operation.new_elements(
                MobileBy.IOS_CLASS_CHAIN, self.excel['hot_search_group'])
            hot_set_num = len(hot_set)
            self.assertIs(3, hot_set_num,
                          "预期值:{},实际值:{}".format(3, hot_set_num))

            # 从任意热搜进入
            round_num = randint(0, hot_set_num - 1)
            select_name = hot_set[round_num].text
            # 从选择的热搜进入搜索结果页
            hot_set[round_num].click()
            # 获取搜索词
            result_name = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN, self.excel['search_field']).text
            self.assertEqual(select_name, result_name,
                             "预期值:{},实际值:{}".format(select_name, result_name))

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
    def test_sy_jgq_search_phone_002(self):
        "首页金刚区-热门功能-找电话,校验 非常用字符、空值、屏蔽词,搜索无结果"
        self.log.info(self.test_sy_jgq_search_phone_002.__doc__)
        try:
            search_word = "!@#$"
            self.server_oper.check_search_null(MobileBy.IOS_CLASS_CHAIN,
                                               self.excel['search_field'],
                                               search_word)

            # 空值
            search_word = "  "
            self.server_oper.check_search_null(MobileBy.IOS_CLASS_CHAIN,
                                               self.excel['search_field'],
                                               search_word)

            # 屏蔽词
            search_word = "中国"
            self.server_oper.check_search_null(MobileBy.IOS_CLASS_CHAIN,
                                               self.excel['search_field'],
                                               search_word)

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
    def test_sy_jgq_aroundf_boss_002(self):
        "首页金刚区-热门功能-身边老板,通讯录中没有号码,点击一键监控/监控未登录拉起登陆"
        self.log.info(self.test_sy_jgq_aroundf_boss_002.__doc__)
        try:
            msg = "短信验证码登录"
            # 获取「一键监控」
            self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN,
                self.excel["aroundf_boss_monitor_button"]).click()
            login_title = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN, self.excel['login_title']).text
            self.assertEqual(msg, login_title,
                             "预期值:{},实际值:{}".format(msg, login_title))

            # 点击「返回」
            self.preprocessing.backtrack()

            # 获取「监控」
            self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN,
                self.excel['aroundf_boss_monitor'].format(4)).click()
            login_title = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN, self.excel['login_title']).text
            self.assertEqual(msg, login_title,
                             "预期值:{},实际值:{}".format(msg, login_title))

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
 def test_sy_jgq_tyc_map_003(self):
     "首页金刚区-热门功能-天眼地图,校验搜索候选列表"
     self.log.info(self.test_sy_jgq_tyc_map_003.__doc__)
     try:
         # 点击 「搜索框」
         self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                    "输入地点,即可查询周围的公司").click()
         # 输入「搜索词」
         self.operation.send(MobileBy.ACCESSIBILITY_ID, "输入地点,即可查询周围的公司",
                             "百度")
         groups = len(
             self.operation.new_elements(MobileBy.IOS_CLASS_CHAIN,
                                         self.excel['ty_map_search_list']))
         for i in range(1, groups + 1):
             search_name = self.operation.new_element(
                 MobileBy.IOS_CLASS_CHAIN,
                 self.excel['ty_map_search_list_name'].format(i)).text
             self.log.info(search_name)
             self.assertIn("百度", search_name,
                           "搜索列表值:{}".format(search_name))
     except AssertionError as ae:
         raise self.failureException(ae)
     except Exception as e:
         self.log.error(error_format(e))
         raise e
예제 #9
0
    def test_sy_jgq_p0_003(self):
        "首页金刚区-风险信息,全部只做入口校验"
        self.log.info(self.test_sy_jgq_p0_003.__doc__)
        try:
            # ========== 风险信息 ==========
            # 滑动一屏,确保下面的维度可点击
            self.operation.mobile_swipe(direction='up')

            # 诉讼
            self.server_oper.check_text_field(server_name="诉讼",
                                              diff_con="请输入诉讼号或企业名称")
            self.preprocessing.backtrack()

            # 法院公告
            self.server_oper.check_text_field(server_name="法院公告",
                                              diff_con="请输入企业名称、上诉方或被诉方")
            self.preprocessing.backtrack()

            # 税务评级
            self.server_oper.check_text_field(server_name="税务评级",
                                              diff_con="输入企业名称")
            self.preprocessing.backtrack()

            # 进出口信用
            self.server_oper.check_text_field(server_name="进出口信用",
                                              diff_con="请输入企业名称")
            self.preprocessing.backtrack()

            # 司法拍卖
            self.server_oper.check_text_field(server_name="司法拍卖",
                                              diff_con="请输入企业名称")
            self.preprocessing.backtrack()

            # 开庭公告
            self.server_oper.check_text_field(server_name="开庭公告",
                                              diff_con="请输入企业名称")
            self.preprocessing.backtrack()

        except AssertionError as ae:
            self.log.error(error_format(ae))
            raise self.failureException()
        except Exception as e:
            self.log.error(error_format(e))
            raise e
예제 #10
0
 def test_001_cgx_ss_p0(self):
     """点击热搜关系"""
     log.info(self.test_001_cgx_ss_p0.__doc__)
     try:
         relation_point_tag = self.relation_operate.hot_relation()
         home_page_tag = self.relation_process.relation_demo()
         self.assertTrue(relation_point_tag, "查关系:样例关系节点,展示失败")
         self.assertTrue(home_page_tag, "查关系:点击右上角天眼查logo,返回首页失败")
     except Exception as e:
         log.error(error_format(e))
     finally:
         self.preprocessing.back_index()
    def test_sy_jgq_tyc_map_005(self):
        "首页金刚区-热门功能-天眼地图,校验非VIP账户,点击VIP条件,调起VIP购买弹窗"
        self.log.info(self.test_sy_jgq_tyc_map_005.__doc__)
        # 获取 非VIP 账号
        user = self.account.get_account()
        try:
            # 判断 登陆状态
            login_status = self.preprocessing.is_login()
            if not login_status:
                self.preprocessing.login(phone_num=user,
                                         password=self.account.get_pwd())
                # 点击 「全部」
            self.server_oper.click_all()
            # 点击「天眼地图」
            self.server_oper.click_server("天眼地图")
            msg = "VIP会员可使用高级筛选条件"
            # 「有手机号码」
            self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                       "有手机号码").click()
            vip_title = self.operation.is_element(MobileBy.ACCESSIBILITY_ID,
                                                  msg)
            self.assertTrue(vip_title, "预期值:{},实际值:{}".format(msg, vip_title))
            # 点击「关闭」
            self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                       "ic pop off").click()

            # 「有联系方式」
            self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                       "有联系方式").click()
            vip_title = self.operation.is_element(MobileBy.ACCESSIBILITY_ID,
                                                  msg)
            self.assertTrue(vip_title, "预期值:{},实际值:{}".format(msg, vip_title))
            # 点击「关闭」
            self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                       "ic pop off").click()

            # 「有联系邮箱」
            self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                       "有联系邮箱").click()
            vip_title = self.operation.is_element(MobileBy.ACCESSIBILITY_ID,
                                                  msg)
            self.assertTrue(vip_title, "预期值:{},实际值:{}".format(msg, vip_title))
            # 点击「关闭」
            self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                       "ic pop off").click()
        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
        finally:
            self.account.release_account(account=user)
예제 #12
0
 def skip_guide(self, number=4):
     """
     跳过引导页
     @param number:
     @return:
     """
     try:
         for i in range(number):
             self.operation.mobile_swipe('left')
         self.log.info("跳过首页引导")
     except Exception as e:
         self.log.error(error_format(e))
         raise e
    def test_sy_jgq_aroundf_boss_003(self):
        "首页金刚区-热门功能-身边老板,通讯录中没有号码,校验「监控」功能"
        self.log.info(self.test_sy_jgq_aroundf_boss_003.__doc__)
        try:
            user = self.account.get_account()
            # 获取「推荐列表第一个名字」
            boss_name = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN,
                self.excel['aroundf_boss_name'].format(4)).text
            # 点击「监控」
            self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN,
                self.excel['aroundf_boss_monitor'].format(4)).click()
            # 登录
            login_status = self.operation.is_element(MobileBy.IOS_CLASS_CHAIN,
                                                     self.excel['login_title'])
            if login_status:
                self.preprocessing.login(phone_num=user,
                                         password=self.account.get_pwd())
                # 点击「监控」
                self.operation.new_element(
                    MobileBy.IOS_CLASS_CHAIN,
                    self.excel['aroundf_boss_monitor'].format(4)).click()
            # 跳过 监控日报 邮箱设置
            self.preprocessing.skip_monitor_daily_email()
            # 进入到 监控列表
            self.preprocessing.enter_monitor_list()
            # 获取监控列表
            groups = len(
                self.operation.new_elements(MobileBy.IOS_CLASS_CHAIN,
                                            self.excel['monitor_list']))
            self.assertTrue(groups > 1, "监控列表为空,未监控上")
            flag = False
            for i in range(1, groups + 1):
                monitor_name = self.operation.new_element(
                    MobileBy.IOS_CLASS_CHAIN,
                    self.excel['monitor_list_info'].format(i)).text
                if monitor_name == boss_name:
                    flag = True
                    break
            self.assertTrue(flag, "监控列表未找到刚关注的人:{}".format(boss_name))

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
        finally:
            self.account.release_account(user)
예제 #14
0
 def test_002_cgx_ss_p0(self):
     """输入查关系节点"""
     log.info(self.test_002_cgx_ss_p0.__doc__)
     vip_num = None
     try:
         vip_num = self.account.get_account(account_type='vip')
         vip_passwd = self.account.get_pwd()
         self.preprocessing.login(
             vip_num, vip_passwd)
         self.relation_process.relation_search()
     except Exception as e:
         log.error(error_format(e))
     finally:
         self.preprocessing.back_index()
         self.account.release_account(vip_num, account_type='vip')
예제 #15
0
 def _re_count(self, count_text):
     """
     正则匹配文本中的数字
     @param count_text:
     @return:
     """
     try:
         match = re.search(r"([0-9]\d*)", count_text).group()
         return int(match)
     except AttributeError as ae:
         self.log.info("没有匹配到数字")
         raise ae
     except Exception as e:
         self.log.error(error_format(e))
         raise e
예제 #16
0
    def test_sy_jgq_p0_001(self):
        "首页金刚区-热门功能,全部只做入口校验"
        self.log.info(self.test_sy_jgq_p0_001.__doc__)
        try:
            # ========== 热门功能 ==========
            # 点击「天眼地图」
            # 校验 new 标签
            is_new = self.operation.is_element(MobileBy.IOS_CLASS_CHAIN,
                                               self.excel['ty_map_new'])
            self.assertTrue(is_new, "new标签不存在")
            self.server_oper.check_title(server_name="天眼地图", diff_con="天眼地图")
            self.preprocessing.backtrack()

            # 点击「查老赖」
            self.server_oper.check_title(server_name="查老赖", diff_con="查老赖")
            self.preprocessing.backtrack()

            # 点击「找电话」
            self.server_oper.check_text_field("找电话", "请输入企业名称")
            self.preprocessing.backtrack()

            # 附近公司
            self.server_oper.check_title(server_name="附近公司", diff_con="附近公司")
            self.preprocessing.backtrack()

            # 企业实名认证
            self.server_oper.check_title(server_name="企业实名认证",
                                         diff_con="选择认证套餐",
                                         tl=5)
            self.preprocessing.backtrack()

            # 身边老板
            self.server_oper.check_title(server_name="身边老板", diff_con="身边老板")
            self.preprocessing.backtrack()

            # 查商标
            self.server_oper.check_title(server_name="查商标", diff_con="查商标")
            self.preprocessing.backtrack()

            # 企业核名
            self.server_oper.check_title(server_name="企业核名", diff_con="企业名称检测")
            self.preprocessing.backtrack()

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
예제 #17
0
 def skip_monitor(self):
     """
     跳过监控日报
     @return:
     """
     try:
         element = self.operation.is_element(self.by.IOS_PREDICATE,
                                             self.excel['monitor_title'])
         if element:
             self.operation.new_element(
                 self.by.IOS_PREDICATE,
                 self.excel['close_monitor']).click()
             self.log.info("跳过监控日报")
     except Exception as e:
         self.log.error(error_format(e))
         raise e
예제 #18
0
 def cancel_update(self):
     """
     跳过 升级弹窗
     @return:
     """
     try:
         element = self.operation.is_element(self.by.IOS_PREDICATE,
                                             self.excel['update_title'],
                                             outtime=10)
         if element:
             self.operation.new_element(self.by.IOS_PREDICATE,
                                        self.excel['close_update']).click()
             self.log.info("跳过升级弹窗")
     except Exception as e:
         self.log.error(error_format(e))
         raise e
    def test_sy_jgq_tyc_map_002(self):
        "首页金刚区-热门功能-天眼地图,校验地图内页按钮"
        self.log.info(self.test_sy_jgq_tyc_map_002.__doc__)
        try:
            area_button = self.operation.is_element(MobileBy.ACCESSIBILITY_ID,
                                                    "范围")
            self.assertTrue(area_button, "「范围」按钮不存在")

            location_button = self.operation.is_element(
                MobileBy.ACCESSIBILITY_ID, "location nor")
            self.assertTrue(location_button, "「location」按钮不存在")

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
예제 #20
0
 def agree_license(self):
     """
     点击用户协议
     @return:
     """
     try:
         element = self.operation.is_element(self.by.IOS_PREDICATE,
                                             self.excel['agree_license'])
         if element:
             self.operation.new_element(
                 self.by.IOS_PREDICATE,
                 self.excel['agree_license']).click()
             self.log.info("点击同意用户协议")
     except Exception as e:
         self.log.error('点击同意用户协议失败!!!')
         self.log.error(error_format(e))
         raise e
예제 #21
0
 def test_003_cgx_ss_p0(self):
     """查关系-更多操作"""
     log.info(self.test_003_cgx_ss_p0.__doc__)
     try:
         self.relation_operate.hot_relation()
         share_tag = self.relation_process.relation_share()
         save_tag = self.relation_process.relation_save()
         time.sleep(3)
         scan_tag = self.relation_process.relation_scan()
         edit_tag = self.relation_process.relation_edit()
         self.assertTrue(share_tag, "查关系:更多操作,「分享」失败")
         self.assertTrue(save_tag, "查关系:更多操作,「保存」失败")
         self.assertTrue(scan_tag, "查关系:更多操作,「扫一扫」失败")
         self.assertFalse(edit_tag, "查关系:更多操作,「删减」失败")
     except Exception as e:
         log.error(error_format(e))
     finally:
         self.preprocessing.back_index()
예제 #22
0
 def enter_monitor_list(self):
     """
     进入到 我的->监控列表
     @return:
     """
     # 返回到「首页」
     try:
         self.back_index()
         # 点击「我的」
         self.operation.new_element(MobileBy.IOS_CLASS_CHAIN,
                                    self.excel['index'].format(5)).click()
         # 点击「我的监控」
         self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                    '我的监控').click()
         # 点击「监控列表」
         self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                    '监控列表').click()
     except Exception as e:
         self.log.error(error_format(e))
    def test_sy_jgq_search_phone_004(self):
        "首页金刚区-热门功能-找电话,校验 「一键清除」按钮"
        self.log.info(self.test_sy_jgq_search_phone_004.__doc__)
        try:
            search_word = "百度"
            # 搜索
            self.operation.send(MobileBy.IOS_CLASS_CHAIN,
                                self.excel['search_field'], search_word)
            # 一键清除
            self.preprocessing.clear_text()
            find_field = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN, self.excel['search_field']).text
            diff_field = "请输入企业名称"
            self.assertEqual(diff_field, find_field,
                             "预期值:{},实际值:{}".format(diff_field, find_field))

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
    def test_sy_jgq_search_phone_006(self):
        "首页金刚区-热门功能-找电话,校验 「清空」按钮-取消功能"
        self.log.info(self.test_sy_jgq_search_phone_006.__doc__)
        try:
            flag = self.operation.is_element(MobileBy.ACCESSIBILITY_ID, "清空")
            if not flag:
                self.log.info("没有搜索记录")
                # 搜索
                self.operation.send(MobileBy.IOS_CLASS_CHAIN,
                                    self.excel['search_field'], "百度")
                # 一键清除
                self.preprocessing.clear_text()
            self.preprocessing.clear_history(select=False)
            elem = self.operation.is_element(MobileBy.ACCESSIBILITY_ID, "最近搜索")
            self.assertTrue(elem, "最近搜索栏不存在")

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
예제 #25
0
 def _update_account_status(self, account, status, vip_type, account_special):
     """
     更新account状态
     @param account: 账号
     @param status: 使用状态
     @param vip_type: 账号类型
     @return:
     """
     try:
         user = getpass.getuser()
         with self.db.cursor() as cursor:
             dt = datetime.datetime.now()
             dt_now = dt.strftime("%Y-%m-%d %H:%M:%S")
             update_sql = "UPDATE account SET status = '{}', update_time = '{}', user = '******' WHERE phone='{}' and vip='{}' and special='{}'".format(
                 status, dt_now, user_dict.setdefault(user.lower(), user), account, vip_type, account_special
             )
             cursor.execute(update_sql)
         self.db.commit()
     except Exception as e:
         self.log.error(error_format(e))
         self.db.rollback()
 def test_sy_jgq_tyc_map_003(self):
     "首页金刚区-热门功能-天眼地图,校验搜索-一键清除按钮"
     self.log.info(self.test_sy_jgq_tyc_map_003.__doc__)
     try:
         self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                    "输入地点,即可查询周围的公司").click()
         self.operation.send(MobileBy.ACCESSIBILITY_ID, "输入地点,即可查询周围的公司",
                             "百度")
         groups = len(
             self.operation.new_elements(MobileBy.IOS_CLASS_CHAIN,
                                         self.excel['ty_map_search_list']))
         self.log.info("搜索结果数:{}".format(groups))
         # 一键清除
         self.preprocessing.clear_text()
         find_title = self.operation.is_element(MobileBy.ACCESSIBILITY_ID,
                                                "您可以试试")
         self.assertTrue(find_title, "未找到「您可以试试」")
     except AssertionError as ae:
         raise self.failureException(ae)
     except Exception as e:
         self.log.error(error_format(e))
         raise e
    def test_sy_jgq_search_phone_003(self):
        "首页金刚区-热门功能-找电话,校验 搜索结果包含搜索关键词「百、度」"
        self.log.info(self.test_sy_jgq_search_phone_003.__doc__)
        try:
            search_word = "百度"
            # 搜索
            self.operation.send(MobileBy.IOS_CLASS_CHAIN,
                                self.excel['search_field'], search_word)
            for i in range(0, 5):
                company_name = self.operation.new_element(
                    MobileBy.IOS_CLASS_CHAIN,
                    self.excel['search_phone_company'].format(i + 1)).text
                self.log.info("当前校验的公司名:{}".format(company_name))
                assert search_word[0] in company_name or search_word[
                    1] in company_name, "当前校验的公司名:{},不包含{}、{}".format(
                        company_name, search_word[0], search_word[1])

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
예제 #28
0
 def _make_account(self):
     """
     制造account
     @return:
     """
     try:
         # self._table_exists("account")
         base = 11099995001
         vip_base = 11099990101
         with self.db.cursor() as cursor:
             for i in range(0, 100):
                 dt = datetime.datetime.now()
                 dt_now = dt.strftime("%Y-%m-%d %H:%M:%S")
                 # 是否是特殊账号
                 if str(base + i) in exclude_account:
                     account_sql = "insert into account (phone, status, create_time, vip, special) values ('{}','{}','{}', '{}', '{}')".format(
                         str(base + i), "0", dt_now, "0", "1"
                     )
                 else:
                     account_sql = "insert into account (phone, status, create_time, vip, special) values ('{}','{}','{}', '{}', '{}')".format(
                         str(base + i), "0", dt_now, "0", "0"
                     )
                 # VIP 是否是特殊账号
                 if str(vip_base + i) in exclude_account:
                     account_sql_vip = "insert into account (phone, status, create_time, vip, special) values ('{}','{}','{}', '{}', '{}')".format(
                         str(vip_base + i), "0", dt_now, "1", "1"
                     )
                 else:
                     account_sql_vip = "insert into account (phone, status, create_time, vip, special) values ('{}','{}','{}', '{}', '{}')".format(
                         str(vip_base + i), "0", dt_now, "1", "0"
                     )
                 cursor.execute(account_sql)
                 cursor.execute(account_sql_vip)
         self.db.commit()
         self.log.info("账号批量生成成功")
     except Exception as e:
         self.log.error(error_format(e))
         self.db.rollback()
    def test_sy_jgq_tyc_map_001(self):
        "首页金刚区-热门功能-天眼地图,校验未登录点击页面条件,跳转登录页"
        self.log.info(self.test_sy_jgq_tyc_map_001.__doc__)
        try:
            msg = "短信验证码登录"
            # 「有手机号码」
            self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                       "有手机号码").click()
            login_title = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN, self.excel['login_title']).text
            self.assertEqual(msg, login_title,
                             "预期值:{},实际值:{}".format(msg, login_title))
            # 点击「返回」
            self.preprocessing.backtrack()

            # 「有联系方式」
            self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                       "有联系方式").click()
            login_title = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN, self.excel['login_title']).text
            self.assertEqual(msg, login_title,
                             "预期值:{},实际值:{}".format(msg, login_title))
            # 点击「返回」
            self.preprocessing.backtrack()

            # 「有联系邮箱」
            self.operation.new_element(MobileBy.ACCESSIBILITY_ID,
                                       "有联系邮箱").click()
            login_title = self.operation.new_element(
                MobileBy.IOS_CLASS_CHAIN, self.excel['login_title']).text
            self.assertEqual(msg, login_title,
                             "预期值:{},实际值:{}".format(msg, login_title))

        except AssertionError as ae:
            raise self.failureException(ae)
        except Exception as e:
            self.log.error(error_format(e))
            raise e
예제 #30
0
 def get_count(self, **kwargs):
     """
     正则匹配文本中的数字,适用于 查找count数
     @param kwargs:
             elements:一个element对象集合,用于批量匹配
             单个匹配必传参数 find_type、find_element
     @return:
     """
     try:
         if kwargs.get('elements'):
             result = list()
             for element in kwargs['elements']:
                 count_num = self._re_count(element)
                 result.append(count_num)
             return result
         else:
             if kwargs.get('find_type') and kwargs.get('find_element'):
                 count_text = self.new_element(kwargs['find_type'],
                                               kwargs['find_element']).text
                 return self._re_count(count_text)
     except Exception as e:
         self.log.error(error_format(e))
         raise e