Exemple #1
0
    def select_manu(self, manu_name):
        logger.info("--- 选择生产企业:{} ---".format(manu_name))
        # 点击生产企业选择框
        self.find_element(loc.manu_loc).click()
        # 获取所有生产企业的名字
        names = self.find_elements(loc.manu_name_loc)
        try:
            # 判断想选择的生产企业是否在列表中,存在时点击选择
            for i in names:
                if i.text == manu_name:
                    i.click()
                    break

            logger.info("--- 选择生产企业后,点击确定 ---")
            # 选择生产企业后点击确定
            self.find_element(loc.manu_yes_loc).click()
            try:
                # 判断是否有错误信息提示框
                self.wait_ele_visible(loc.manu_msg_loc, visible=None)
            except:
                logger.exception("--- 提示信息:请选择生产企业 ---")
                raise
            else:
                logger.info("--- 选择生产企业成功 ---")
        except:
            logger.exception("--- 错误信息:选择的生产企业不存在 ---")
    def select_bank_card(self, bank_card_id):
        logger.info("--- 点击收款账户输入框 ---")
        self.find_element(loc.bank_card_loc).click()
        # 获取所有收款账户的姓名
        name = self.find_elements(loc.bank_card_name_loc)
        # 获取所有收款账户的银行卡
        card = self.find_elements(loc.bank_card_id_loc)

        try:
            for i in range(len(card)):
                # 判断要选择的收款账户银行卡是否在列表中
                logger.info("--- 查找收款银行卡号 : {} ---".format(bank_card_id))
                if card[i].text == bank_card_id:
                    logger.info("--- 查找收款银行卡号 : {} 成功---".format(bank_card_id))
                    self.find_element(loc.bank_card_select_button(i +
                                                                  1)).click()
                    logger.info("--- 查找收款账户成功 ---")
                    break

            logger.info("--- 选择收款账户后点击确定 ---")
            self.find_element(loc.bank_card_yes_loc).click()

            try:
                # 判断有没有错误提示信息
                self.wait_ele_visible(loc.bank_card_err_msg_loc, visible=None)
            except:
                logger.exception("--- 提示信息:请选择收款账户 ---")
                raise
            else:
                logger.info("--- 选择收款账户成功 ---")
        except:
            logger.exception("--- 选择的收款账户银行卡不存在 ---")
Exemple #3
0
    def select_linker(self, linker_name):
        logger.info("--- 选择采购经理人:{} ---".format(linker_name))
        # 点击选择按钮
        self.find_element(loc.linker_loc).click()
        # 获取所有采购经理人的名字
        names = self.find_elements(loc.linker_name_loc)
        try:
            # 判断想选择的采购经理人是否在列表中,存在时点击选择
            for i in names:
                if i.text == linker_name:
                    i.click()
                    break

            logger.info("--- 选择采购经理人后,点击确定 ---")
            self.find_element(loc.select_linker_yes_loc).click()
            try:
                # 判断是否有错误信息提示框
                self.wait_ele_visible(loc.linker_msg_loc, visible=None)
            except:
                logger.exception("--- 提示信息:请选择采购经理人 ---")
                raise
            else:
                logger.info("--- 选择采购经理人成功 ---")
        except:
            logger.info("--- 错误信息:选择的采购经理人不存在 ---")
    def select_linker(self, tel):
        logger.info("--- 点击采购经理人手机号输入框 ---")
        self.find_element(loc.linker_loc).click()
        # 获取所有采购经理人的手机号
        tels = self.find_elements(loc.linker_tel_loc)
        # 判断要选择的采购经理人是否在列表中
        try:
            for i in tels:
                if i.text == tel:
                    i.click()
                    logger.info("--- 选择采购经理人 : {} ---".format(tel))
                    break

            logger.info("--- 选择采购经理人后点击确定 ---")
            self.find_element(loc.linker_yes_loc).click()
            try:
                # 判断有没有错误提示信息
                self.wait_ele_visible(loc.linker_err_msg_loc, visible=None)
            except:
                logger.exception("--- 提示信息:请选择采购经理人 ---")
                raise
            else:
                logger.info("--- 选择采购经理人成功 ---")
        except:
            logger.info("--- 错误信息:选择的采购经理人不存在 ---")
Exemple #5
0
 def wait_ele_visible(self, loc, visible=True):
     if visible:
         # visible为true时,执行元素是否可见的判断
         logger.info("等待元素:{} 是否可见".format(loc))
         try:
             wait = WebDriverWait(self.driver, 20, 0.5)
             wait.until(EC.visibility_of_element_located(loc))
             sleep(1)
         except:
             logger.exception("等待元素:{} 可见失败,元素当前不可见".format(loc))
             raise
         else:
             logger.info("等待元素:{} 可见成功,元素当前可见")
     else:
         # visible为false时,执行元素是否不可见的判断
         logger.info("等待元素:{} 是否不可见".format(loc))
         try:
             wait = WebDriverWait(self.driver, 20, 0.5)
             wait.until(EC.invisibility_of_element_located(loc))
             sleep(1)
         except:
             logger.exception("等待元素:{} 不可见失败,元素当前可见".format(loc))
             raise
         else:
             logger.info("等待元素:{} 不可见成功,元素当前不可见")
Exemple #6
0
 def find_elements(self, loc):
     # 先等待元素可见
     self.wait_ele_visible(loc)
     logger.info("查找元素:{}".format(loc))
     try:
         self.driver.find_element(*loc)
         return self.driver.find_elements(*loc)
     except:
         logger.exception("元素查找失败,找不到该元素,开始截取当前页面图像".format(loc))
         self.save_screenshot()
         raise
Exemple #7
0
 def is_user_exist(self):
     # 判断账套信息是否存在
     logger.info("--- 等待账套信息可见 ---")
     try:
         self.wait_ele_visible(loc.user_info_loc)
     except:
         logger.exception("--- 账套信息不可见 ---")
         return False
     else:
         logger.info("--- 账套信息可见 ---")
         return True
Exemple #8
0
 def select_kind(self, kind):
     logger.info("--- 选择采购类别:{} ---".format(kind))
     # 获取所有采购类别的名字
     kinds = self.find_elements(loc.kind_loc)
     try:
         # 判断想选择的采购类别是否在列表中,存在时点击选择
         for i in kinds:
             if i.text == kind:
                 i.click()
                 break
     except:
         logger.exception("--- 错误信息:选择的采购类别不存在 ---")
Exemple #9
0
 def result(self, value):
     logger.info("--- 判断是否查询到结果 ---")
     # 定位到所有的查询结果
     all_result = self.find_elements(loc.result_loc)
     try:
         # 判断查询条件是否显示在查询结果中
         for i in all_result:
             if value == i.text:
                 logger.info("--- 查询到结果 ---")
                 return True
     except:
         logger.exception("--- 未查到结果 ---")
         return False
Exemple #10
0
 def test_02_select_order_by_order_id(self):
     logger.info("--- 输入订单编号查询 ---")
     # 点击供货管理--订单管理
     self.hp.click_order()
     # 输入订单id
     self.op.input_order_id(rd["order_id"])
     # 点击查询
     self.op.click_select()
     # 断言
     try:
         self.assertTrue(self.op.result(rd["order_id"]))
         logger.info("--- 断言成功 ---")
     except:
         logger.exception("--- 断言失败 ---")
Exemple #11
0
    def __init__(self, driver):
        self.driver = driver
        lp = LoginPage(self.driver)  # 登录页
        hp = HomePage(self.driver)  # 首页
        # 打开网址
        lp.open_url(rd["url"])
        # 登录页
        lp.login_other_method(rd["user"], rd["password"])

        # 判断登录是否成功
        try:
            if hp.is_user_exist():
                logger.info("--- 登录成功,进入首页 ---")
        except:
            logger.exception("--- 登录失败 ---")
Exemple #12
0
    def test_login_success(self):
        """成功登录流程"""

        # 手动输入验证码方式
        self.lp.login_other_method(rd["user"], rd["password"])

        # 识别图片验证码方式
        # LoginPage(self.driver).login(rd["user"], rd["password"])

        # 断言
        try:
            self.assertTrue(self.hp.is_user_exist())
        except:
            logger.exception("--- 断言:登录失败 ---")
        else:
            logger.info("--- 断言:登录成功 ---")
            # 点击账套信息
            self.hp.click_user_info()
            # 点击退出按钮
            self.hp.click_exit()