コード例 #1
0
class Expire_Page(BasePage):
    assertlist = ['请选择一项查看']
    '''
        到期提醒
    '''
    # 合同管理
    contract = (By.XPATH, eleData.readExcel(17, 3))
    # 合同管理列表
    contractul = (By.XPATH, eleData.readExcel(452, 3))
    # 选框  全选  选择一项
    check_box = [(By.XPATH, eleData.readExcel(602, 3)),
                 (By.XPATH, eleData.readExcel(603, 3))]
    #所有地区,查看明细
    button = [(By.XPATH, eleData.readExcel(605, 3)),
              (By.XPATH, eleData.readExcel(606, 3))]
    # 验证  右上角验证   明细窗口
    msg_list = [(By.XPATH, eleData.readExcel(598, 3)),
                (By.XPATH, eleData.readExcel(604, 3))]

    def inexpirepage(self):
        '''
     进入到期提醒页面
     :return:
     '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_74_a').click()  # 点击合同管理
        time.sleep(1)
        contractul = self.findElement(*self.contractul)
        contractul.find_element_by_id('sidebarTree_78').click()  # 点击到期提醒
        time.sleep(1)
        log.logger.info('page[%s] :found the menu [%s] and [%s]' %
                        (sys._getframe().f_code.co_name, self.menuList[0],
                         self.contractul))
コード例 #2
0
class DetailQuery_Page(BasePage):
    '''
    银行流水查询
    '''
    # 银农直联系统
    Silverfarmers = (By.XPATH, eleData.readExcel(14, 3))
    # 银农直联列表
    Silverfarmersul = (By.XPATH, '//*[@id="sidebarTree_23_ul"]')
    # 综合查询
    detailQuery = (By.XPATH, eleData.readExcel(232, 3))
    # 综合查询页面
    detailQuerypage = (By.XPATH, eleData.readExcel(342, 3))

    #点击元素
    button_list = \
        [(By.XPATH, eleData.readExcel(361, 3)),#打开选择银行0
         (By.XPATH, eleData.readExcel(362, 3)),#选择银行1
         (By.XPATH, eleData.readExcel(363, 3)),#查询2
         (By.XPATH, eleData.readExcel(364, 3)),#打印3
         (By.XPATH, eleData.readExcel(365, 3))]#导出4
    #验证
    msg = \
        [(By.XPATH, eleData.readExcel(366, 3)),#查询验证0
         (By.XPATH, eleData.readExcel(367, 3))]#打印验证1

    def indetailQuery(self):
        '''
        进入综合查询页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_23_a').click()  # 点击银农直联系统
        time.sleep(1)
        Silverfarmersul = self.findElement(*self.Silverfarmersul)
        Silverfarmersul.find_element_by_xpath('//*[@id="sidebarTree_36_span"]').click()  # 点击综合查询
        time.sleep(1)
        log.logger.info('page[%s] :found the menu [%s] and [%s]' % (
            sys._getframe().f_code.co_name, self.menuList[0], self.Silverfarmersul))
コード例 #3
0
class SwitchPage(BasePage):
    '''
    风格切换
    '''
    # 基础功能列表
    functionList = (By.ID, eleData.readExcel(18, 3))
    #切换横版、切换竖版、验证
    element = [(By.XPATH, eleData.readExcel(221, 3)),
               (By.XPATH, eleData.readExcel(222, 3)),
               (By.XPATH, eleData.readExcel(223, 3)),
               (By.XPATH, eleData.readExcel(224, 3)),
               (By.XPATH, eleData.readExcel(225, 3))]

    def inSwitchPage(self):
        '''
        进入风格切换页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_16_a').click()  # 点击基础功能维护
        time.sleep(1)
        menu_list = self.findElement(*self.functionList)
        menu_list.find_element_by_xpath(
            '//*[@id="sidebarTree_21_a"]').click()  # 点击风格切换
        time.sleep(1)
        log.logger.info('page[%s] :found the menu [%s] and [%s]' %
                        (sys._getframe().f_code.co_name, self.menuList[0],
                         self.functionList))

    def cBtn(self, button):
        '''
        点击按钮
        :return:
        '''
        btn = self.findElement(*button)
        try:
            btn.click()
        except Exception:
            log.logger.exception('can not the button ', exc_info=True)
            raise
        else:
            log.logger.info('page[%s]:clicking the button [%s]' %
                            (sys._getframe().f_code.co_name, button))
コード例 #4
0
class DetailaCcount_page(BasePage):
    '''
        明细账
    '''
    # 合同管理
    contract = (By.XPATH, eleData.readExcel(17, 3))
    # 合同管理列表
    contractul = (By.XPATH, eleData.readExcel(452,3))
    #合同台账列表
    accountsul = (By.XPATH, eleData.readExcel(692,3))
    # 统计
    statistics = (By.XPATH, eleData.readExcel(469, 3))
    # 查询数据
    valuesList = [queryData.readExcel(33, 1), (queryData.readExcel(34, 1)),
                  queryData.readExcel(35, 1), queryData.readExcel(36, 1)]
    # 查询条件 合同号,合同名称,客户名称,合同年限
    query_list = [(By.XPATH, eleData.readExcel(668, 3)), (By.XPATH, eleData.readExcel(669, 3)),
                  (By.XPATH, eleData.readExcel(670, 3)), (By.XPATH, eleData.readExcel(671, 3))]
    #点击  所有地区  查询  第一条数据查看
    button_list = [(By.XPATH, eleData.readExcel(666, 3)),
                   (By.XPATH, eleData.readExcel(667, 3)),
                   (By.XPATH,'//*[@id="mychart1"]/tbody/tr[1]/td[11]/a'),
                   (By.XPATH, '//*[@id="hand_man"]'),#经手人
                   (By.XPATH, '//*[@id="searchForm"]/div[7]/select')]#收款状态
    #经手人
    handledby = [(By.XPATH, eleData.readExcel(672, 3)),#请选择
                 (By.XPATH, eleData.readExcel(673, 3)),#管理员
                 (By.XPATH, eleData.readExcel(674, 3)),#曲盼盼
                 (By.XPATH, eleData.readExcel(675, 3)),#孙宏
                 (By.XPATH, eleData.readExcel(676, 3))]#刘佳
    #收款状态
    paymentstatus = [(By.XPATH, eleData.readExcel(677, 3)),#请选择
                     (By.XPATH, eleData.readExcel(678, 3)),#正常履约
                     (By.XPATH, eleData.readExcel(679, 3)),#已终止
                     (By.XPATH, eleData.readExcel(680, 3)),#超期未收
                     (By.XPATH, eleData.readExcel(681, 3))]#待收款
    #时间控件
    time_list = [(By.XPATH, eleData.readExcel(682, 3)),#签订日期始0
                 (By.XPATH, eleData.readExcel(683, 3)),#签订日期止1
                 (By.XPATH, eleData.readExcel(684, 3)),#前一年2
                 (By.XPATH, eleData.readExcel(685, 3)),#选择日3
                 (By.XPATH, eleData.readExcel(686, 3)),#前一月4
                 (By.XPATH, eleData.readExcel(687, 3)),#选择日5
                 (By.XPATH, eleData.readExcel(688, 3))]#确定6
    #验证
    msg_list = [(By.XPATH, eleData.readExcel(689, 3)),#查询验证
                (By.XPATH, eleData.readExcel(690, 3)),#时间查询验证
                (By.XPATH, eleData.readExcel(691, 3))]#明细窗口
    assertlist = ['显示第 1 到第 0 条记录,总共 0 条记录',
                  '显示第 1 到第 5 条记录,总共 5 条记录',
                  '显示第 1 到第 10 条记录,总共 294 条记录'
                  ]
    def indetailaccountpage(self):
        '''
        进入明细账页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_74_a').click()  # 点击合同管理
        time.sleep(1)
        ele = self.findElement(*self.statistics)  # 定位到元素
        self.driver.execute_script('arguments[0].scrollIntoView(false)', ele)
        time.sleep(1)
        contractul = self.findElement(*self.contractul)
        contractul.find_element_by_id('sidebarTree_83_a').click()  # 点击合同台账
        time.sleep(2)
        accountsul = self.findElement(*self.contractul)
        accountsul.find_element_by_id('sidebarTree_85').click() # 明细账
        time.sleep(1)
        log.logger.info('page[%s] :found the menu [%s] and [%s]' % (
            sys._getframe().f_code.co_name, self.menuList[0], self.contractul))

    # 输入查询条件
    def iQueryCondition(self, contractinformation, value):
     """
     :param contractinformation:
     :param value:
     :return:
     """
     contract_information = self.findElement(*contractinformation)
     try:
      contract_information.clear()
      contract_information.send_keys(str(value))
     except Exception:
      log.logger.exception('input value error', exc_info=True)
      raise
     else:
      log.logger.info('[%s] is typing value [%s] ' % (contractinformation, value))

    # 获取条件输入框的内容
    def getInputboxValue(self, *query_list):
     '''

     :param query_list:
     :return:
     '''
     try:
      get_query_text = self.findElement(*query_list)
      text = get_query_text.get_attribute('value')
     except Exception:
      log.logger.exception('get value of element fail', exc_info=True)
      raise
     else:
      log.logger.info('get value [%s] of element [%s] success' % (query_list, text))
      return text

    # 重置功能的重写
    def reset(self):
     """

     :return:
     """
     try:
      self.findElement(*self.query_list[0]).clear()
      self.findElement(*self.query_list[1]).clear()
      self.findElement(*self.query_list[2]).clear()
      self.findElement(*self.query_list[3]).clear()
     except Exception:
      log.logger.exception('reset fail', exc_info=True)
      raise
     else:
      log.logger.info('reset [%s]-[%s]-[%s]-[%s] success' % (
       self.query_list[0], self.query_list[1], self.query_list[2], self.query_list[3]))

    # 经手人,收款状态下拉选项
    def contractOption(self, *xpathList):
        """
        :param xpath_list:
        :return:
        """
        try:
            contract_option = self.findElement(*xpathList)
            text = contract_option.text
        except Exception:
            log.logger.exception('get element contract_option item text fail', exc_info=True)
            raise
        else:
            log.logger.info('get element [%s] contract_option item text [%s] fail' % (xpathList, text))
            return text, contract_option
コード例 #5
0
class MessagerEceiver_Page(BasePage):
    '''
        预警短信接收人
    '''
    # 合同管理
    contract = (By.XPATH, eleData.readExcel(17, 3))
    # 合同管理列表
    contractul = (By.XPATH, eleData.readExcel(452, 3))
    valueList = (13764901222)
    reason = time.strftime('%Y-%m-%d:%H-%M-%S') + '测试'
    #查询数据
    valuesList = [(queryData.readExcel(31, 1)), (queryData.readExcel(32, 1))]
    # 查询条件 姓名  备注
    query_list = [(By.XPATH, eleData.readExcel(607, 3)),
                  (By.XPATH, eleData.readExcel(608, 3))]
    # 断言数据
    assertlist = [
        '显示第 1 到第 0 条记录,总共 0 条记录', '请选择一项查看', '测试', '测试人员', '手机号不能为空', '不能为空',
        '请输入正确的手机号', '新增成功!', '请选中一项内容!', '请选中一项内容进行操作!', '修改成功!', '删除成功!'
    ]
    #输入框
    input_list = [
        (By.XPATH, eleData.readExcel(609, 3)),  #姓名(增0
        (By.XPATH, eleData.readExcel(610, 3)),  #手机号(增1
        (By.XPATH, eleData.readExcel(611, 3)),  #备注(增2
        (By.XPATH, eleData.readExcel(612, 3)),  #姓名(改3
        (By.XPATH, eleData.readExcel(613, 3)),  #手机号(改4
        (By.XPATH, eleData.readExcel(614, 3))
    ]  #备注(改5
    #选择框  全选  一项
    checkbox = [(By.XPATH, eleData.readExcel(615, 3)),
                (By.XPATH, eleData.readExcel(616, 3))]
    #点击
    button_list = [
        (By.XPATH, eleData.readExcel(617, 3)),  #查询0
        (By.XPATH, eleData.readExcel(618, 3)),  #新增1
        (By.XPATH, eleData.readExcel(619, 3)),  #修改2
        (By.XPATH, eleData.readExcel(620, 3)),  #删除3
        (By.XPATH, eleData.readExcel(621, 3)),  #新增提交4
        (By.XPATH, eleData.readExcel(622, 3)),  #新增取消5
        (By.XPATH, eleData.readExcel(623, 3)),  #修改提交6
        (By.XPATH, eleData.readExcel(624, 3)),  #修改取消7
        (By.XPATH, eleData.readExcel(625, 3)),  #删除确定8
        (By.XPATH, eleData.readExcel(626, 3))
    ]  #删除取消9
    #验证
    msg_list = [
        (By.XPATH, eleData.readExcel(627, 3)),  #右上角验证0
        (By.XPATH, eleData.readExcel(628, 3)),  #查询验证1
        (By.XPATH, eleData.readExcel(629, 3)),  #新增窗口2
        (By.XPATH, eleData.readExcel(630, 3)),  #修改窗口3
        (By.XPATH, eleData.readExcel(631, 3)),  #删除窗口4
        (By.XPATH, eleData.readExcel(632, 3)),  #为空验证5
        (By.XPATH, eleData.readExcel(633, 3)),  #不正规手机号验证(增6
        (By.XPATH, eleData.readExcel(634, 3)),  #手机号为空(增7
        (By.XPATH, eleData.readExcel(635, 3)),  #姓名为空提示(增8
        (By.XPATH, eleData.readExcel(636, 3)),  #姓名为空提示(改9
        (By.XPATH, eleData.readExcel(637, 3)),  #手机号为空(改10
        (By.XPATH, eleData.readExcel(638, 3)),  #不规则手机号(改11
        (By.XPATH, eleData.readExcel(639, 3)),  #备注为空(改12
        (By.XPATH, eleData.readExcel(640, 3)),  #删除验证13
        (By.XPATH, eleData.readExcel(600, 3))
    ]  #错误查询验证14

    def inmessagereceiverpage(self):
        '''
     进入预警短信接收人页面
     :return:
     '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_74_a').click()  # 点击合同管理
        time.sleep(1)
        contractul = self.findElement(*self.contractul)
        contractul.find_element_by_id('sidebarTree_79').click()  # 点击预警短信接收人
        time.sleep(1)
        log.logger.info('page[%s] :found the menu [%s] and [%s]' %
                        (sys._getframe().f_code.co_name, self.menuList[0],
                         self.contractul))

    def iQueryCondition(self, messagereceiver, value):
        """
     :param contractinformation:
     :param value:
     :return:
     """
        message_receiver = self.findElement(*messagereceiver)
        try:
            message_receiver.clear()
            message_receiver.send_keys(str(value))
        except Exception:
            log.logger.exception('input value error', exc_info=True)
            raise
        else:
            log.logger.info('[%s] is typing value [%s] ' %
                            (messagereceiver, value))

    # 获取条件输入框的内容
    def getInputboxValue(self, *query_list):
        '''

     :param query_list:
     :return:
     '''
        try:
            get_query_text = self.findElement(*query_list)
            text = get_query_text.get_attribute('value')
        except Exception:
            log.logger.exception('get value of element fail', exc_info=True)
            raise
        else:
            log.logger.info('get value [%s] of element [%s] success' %
                            (query_list, text))
            return text

    # 重置功能的重写
    def reset(self):
        """

     :return:
     """
        try:
            self.findElement(*self.query_list[0]).clear()
            self.findElement(*self.query_list[1]).clear()
        except Exception:
            log.logger.exception('reset fail', exc_info=True)
            raise
        else:
            log.logger.info('reset [%s]-[%s]success' %
                            (self.query_list[0], self.query_list[1]))

    #键盘删除
    def keydelete(self):
        '''

        :return:
        '''
        for keydelete1 in range(25):
            self.findElement(*self.input_list[3]).send_keys(Keys.BACK_SPACE)
            self.findElement(*self.input_list[4]).send_keys(Keys.BACK_SPACE)
            self.findElement(*self.input_list[5]).send_keys(Keys.BACK_SPACE)
コード例 #6
0
class ExecutiveCondition_Page(BasePage):
    '''
        执行情况
    '''
    # 合同管理
    contract = (By.XPATH, eleData.readExcel(17, 3))
    # 合同管理列表
    contractul = (By.XPATH, eleData.readExcel(452, 3))
    #点击
    button_list = [
        (By.XPATH, eleData.readExcel(654, 3)),  #所有地区
        (By.XPATH, eleData.readExcel(655, 3)),  #查询
        (By.XPATH, eleData.readExcel(656, 3))
    ]  #查看明细
    #选择框
    checkbox = [
        (By.XPATH, eleData.readExcel(657, 3)),  #全选0
        (By.XPATH, eleData.readExcel(658, 3)),  #一项1
        (By.XPATH, eleData.readExcel(659, 3)),  #履约2
        (By.XPATH, eleData.readExcel(660, 3)),  #超期3
        (By.XPATH, eleData.readExcel(661, 3)),  #终止4
        (By.XPATH, eleData.readExcel(662, 3))
    ]  #待收款5
    #验证
    msg_list = [
        (By.XPATH, eleData.readExcel(663, 3)),  #查询验证
        (By.XPATH, eleData.readExcel(664, 3)),  #右上角验证
        (By.XPATH, eleData.readExcel(665, 3))
    ]  #明细窗口
    # 断言数据
    assertlist = [
        '请选择一项查看', '显示第 1 到第 0 条记录,总共 0 条记录', '显示第 1 到第 10 条记录,总共 294 条记录'
    ]

    def inexecutiveconditionpage(self):
        '''
     进入执行情况页面
     :return:
     '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_74_a').click()  # 点击合同管理
        time.sleep(1)
        contractul = self.findElement(*self.contractul)
        contractul.find_element_by_id('sidebarTree_82').click()  # 点击执行情况
        time.sleep(1)
        log.logger.info('page[%s] :found the menu [%s] and [%s]' %
                        (sys._getframe().f_code.co_name, self.menuList[0],
                         self.contractul))
コード例 #7
0
class GeneralLedger_Page(BasePage):
    '''
        总账
    '''
    # 合同管理
    contract = (By.XPATH, eleData.readExcel(17, 3))
    # 合同管理列表
    contractul = (By.XPATH, eleData.readExcel(452, 3))
    #合同台账列表
    accountsul = (By.XPATH, eleData.readExcel(692, 3))
    # 统计
    statistics = (By.XPATH, eleData.readExcel(469, 3))
    #点击
    button_list = [
        (By.XPATH, eleData.readExcel(693, 3)),  #所有地区0
        (By.XPATH, eleData.readExcel(694, 3)),  #合同主体1
        (By.XPATH, eleData.readExcel(695, 3)),  #招标方式2
        (By.XPATH, eleData.readExcel(696, 3)),  #收款状态3
        (By.XPATH, eleData.readExcel(697, 3))
    ]  #查询4
    #合同主体
    contractsubject = [
        (By.XPATH, eleData.readExcel(698, 3)),  #请选择
        (By.XPATH, eleData.readExcel(699, 3)),  #房屋租赁
        (By.XPATH, eleData.readExcel(700, 3)),  #场地租赁
        (By.XPATH, eleData.readExcel(701, 3)),  #土地承包
        (By.XPATH, eleData.readExcel(702, 3)),  #资产
        (By.XPATH, eleData.readExcel(703, 3))
    ]  #建地
    #招标方式
    tender = [
        (By.XPATH, eleData.readExcel(704, 3)),  #请选择
        (By.XPATH, eleData.readExcel(705, 3)),  #公开协作
        (By.XPATH, eleData.readExcel(706, 3)),  #公开竞标
        (By.XPATH, eleData.readExcel(707, 3)),  #其他
        (By.XPATH, eleData.readExcel(708, 3)),  #招投标
        (By.XPATH, eleData.readExcel(709, 3))
    ]  #拍卖
    # 收款状态
    paymentstatus = [
        (By.XPATH, eleData.readExcel(710, 3)),  # 请选择
        (By.XPATH, eleData.readExcel(711, 3)),  # 正常履约
        (By.XPATH, eleData.readExcel(712, 3)),  # 已终止
        (By.XPATH, eleData.readExcel(713, 3)),  # 超期未收
        (By.XPATH, eleData.readExcel(714, 3))
    ]  # 待收款
    #时间控件
    time_list = [
        (By.XPATH, eleData.readExcel(715, 3)),  #签订年度
        (By.XPATH, eleData.readExcel(716, 3)),  #前一年
        (By.XPATH, eleData.readExcel(717, 3)),  #点击
        (By.XPATH, eleData.readExcel(718, 3)),  #2018
        (By.XPATH, eleData.readExcel(719, 3))
    ]  #确定
    #验证
    msgInfo = (By.XPATH, eleData.readExcel(720, 3))
    # 断言数据
    assertlist = [
        '显示第 1 到第 0 条记录,总共 0 条记录',  #0查询为空
        '显示第 1 到第 10 条记录,总共 223 条记录',  #1时间查询
        '显示第 1 到第 10 条记录,总共 163 条记录',  #2房屋租赁查询
        '显示第 1 到第 10 条记录,总共 106 条记录',  #3场地租赁查询
        '显示第 1 到第 3 条记录',  #4土地承包查询
        '显示第 1 到第 10 条记录,总共 21 条记录',  #5资产查询
        '显示第 1 到第 10 条记录,总共 157 条记录',  #6公开协作查询
        '显示第 1 到第 8 条记录',  #7公开竞标查询
        '显示第 1 到第 10 条记录,总共 129 条记录',  #8其他查询
        '显示第 1 到第 10 条记录,总共 294 条记录'  #代付款9
    ]

    def ingeneralledgerpage(self):
        '''
        进入总账页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_74_a').click()  # 点击合同管理
        ele = self.findElement(*self.statistics)  # 定位到元素
        self.driver.execute_script('arguments[0].scrollIntoView(false)', ele)
        time.sleep(1)
        contractul = self.findElement(*self.contractul)
        contractul.find_element_by_id('sidebarTree_83_a').click()  # 点击合同台账
        accountsul = self.findElement(*self.contractul)
        accountsul.find_element_by_id('sidebarTree_84').click()  #总账
        time.sleep(1)
        log.logger.info('page[%s] :found the menu [%s] and [%s]' %
                        (sys._getframe().f_code.co_name, self.menuList[0],
                         self.contractul))

    # 合同主体,招标方式,收款状态下拉选项
    def contractOption(self, *xpathList):
        """
        :param xpath_list:
        :return:
        """
        try:
            contract_option = self.findElement(*xpathList)
            text = contract_option.text
        except Exception:
            log.logger.exception('get element contract_option item text fail',
                                 exc_info=True)
            raise
        else:
            log.logger.info(
                'get element [%s] contract_option item text [%s] fail' %
                (xpathList, text))
            return text, contract_option
コード例 #8
0
class Pay_Page(BasePage):
    '''
    单笔支付
    '''
    #银农直联系统
    Silverfarmers = (By.XPATH, eleData.readExcel(14, 3))
    #银农直联列表
    Silverfarmersul = (By.XPATH, '//*[@id="sidebarTree_23_ul"]')
    #转账功能
    pay = (By.XPATH, '//*[@id="sidebarTree_24"]')
    #转账功能列表
    payul = (By.XPATH, '//*[@id="sidebarTree_24_ul"]')
    #单笔支付
    singlePay = (By.XPATH, eleData.readExcel(226, 3))
    #按钮
    button_list = \
        [(By.XPATH, eleData.readExcel(238, 3)),#村居0
         (By.XPATH, eleData.readExcel(239, 3)),#选择一项村居1
         (By.XPATH, eleData.readExcel(240, 3)),#收款方2
         (By.XPATH, eleData.readExcel(241, 3)),#选择一项收款方3
         (By.XPATH, eleData.readExcel(242, 3)),#添加新收款方4
         (By.XPATH, eleData.readExcel(243, 3)),#开始支付5
         (By.XPATH, eleData.readExcel(244, 3)),#关闭支付6
         (By.XPATH, eleData.readExcel(245, 3))]#确定支付7
    #输入框
    input_list = \
        [(By.XPATH, eleData.readExcel(246, 3)),#收款方名称0
         (By.NAME, eleData.readExcel(247, 3)),#收款方账号1
         (By.NAME, eleData.readExcel(248, 3)),#收款方户名2
         (By.XPATH, eleData.readExcel(249, 3)),#联行号3
         (By.XPATH, eleData.readExcel(250, 3)),#金额4
         (By.XPATH, eleData.readExcel(251, 3)),#摘要5
         (By.XPATH, eleData.readExcel(252, 3))]#支付密码6
    #验证信息
    msg_list = \
        [(By.XPATH, eleData.readExcel(253, 3)),#村居为空提示0
         (By.XPATH, eleData.readExcel(254, 3)),#账号为空提示1
         (By.XPATH, eleData.readExcel(255, 3)),#收款账号为空提示2
         (By.XPATH, eleData.readExcel(256, 3)),#金额为空错误提示3
         (By.XPATH, eleData.readExcel(257, 3)),#摘要为空提示4
         (By.XPATH, eleData.readExcel(258, 3)),#收款账号错误提示5
         (By.XPATH, eleData.readExcel(259, 3)),#收款账号为空提示6
         (By.XPATH, eleData.readExcel(260, 3)),#收款户名为空提示7
         (By.XPATH, eleData.readExcel(261, 3)),#联行号为空错误提示8
         (By.XPATH, eleData.readExcel(262, 3)),#右上提示9
         (By.XPATH, eleData.readExcel(263, 3)),#选择村居验证10
         (By.XPATH, eleData.readExcel(264, 3)),#选择村居验证11
         (By.XPATH, eleData.readExcel(265, 3)),#选择村居验证12
         (By.XPATH, eleData.readExcel(266, 3)),#选择收款方验证13
         (By.XPATH, eleData.readExcel(267, 3)),#选择收款方验证14
         (By.XPATH, eleData.readExcel(268, 3)),#选择收款方验证15
         (By.XPATH, eleData.readExcel(269, 3)),#选择收款方验证16
         (By.XPATH, eleData.readExcel(270, 3)),#收款方为空提示17
         (By.XPATH, eleData.readExcel(271, 3)),#确定支付窗口18
         (By.XPATH, eleData.readExcel(272, 3)),#关闭支付验证19
         (By.XPATH, eleData.readExcel(273, 3)),#点击添加新收款方验证20
         (By.XPATH, '//*[@id="hasntOtherBank"]/div[4]/div/small[2]')]#新增收款方联行号错误
    # 测试数据
    valueList = ['967687572875767575', '811247857857', '1', '123456', '测试']
    reason = time.strftime('%Y-%m-%d:%H-%M-%S') + '测试'

    def insinglePay(self):
        '''
        进入单笔支付页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_23_a').click()  # 点击银农直联系统
        time.sleep(1)
        Silverfarmersul = self.findElement(*self.Silverfarmersul)
        Silverfarmersul.find_element_by_xpath(
            '//*[@id="sidebarTree_24_a"]').click()  # 点击支付功能
        time.sleep(1)
        payul = self.findElement(*self.payul)
        payul.find_element_by_xpath(
            '//*[@id="sidebarTree_25_a"]').click()  #点击单笔支付
        time.sleep(1)
        log.logger.info(
            'page[%s] :found the menu [%s] and [%s]' %
            (sys._getframe().f_code.co_name, self.menuList[0], self.payul))

    def cBtn(self, button):
        '''
        点击按钮
        :return:
        '''
        btn = self.findElement(*button)
        try:
            btn.click()
        except Exception:
            log.logger.exception('can not the button ', exc_info=True)
            raise
        else:
            log.logger.info('page[%s]:clicking the button [%s]' %
                            (sys._getframe().f_code.co_name, button))
コード例 #9
0
class Issuing_Page(BasePage):
    '''
    母子账号代付
    '''
    #银农直联系统
    Silverfarmers = (By.XPATH, eleData.readExcel(14, 3))
    #银农直联列表
    Silverfarmersul = (By.XPATH, '//*[@id="sidebarTree_23_ul"]')
    #代付功能
    pay = (By.XPATH, '//*[@id="sidebarTree_32"]')
    #代付功能列表
    payul = (By.XPATH, '//*[@id="sidebarTree_32_ul"]')
    #母子账号代付
    issuing = (By.XPATH, eleData.readExcel(230, 3))
    #母子账号代付页面
    issuingpage = (By.XPATH, eleData.readExcel(272, 3))
    #按钮
    button_list = \
        [(By.XPATH, eleData.readExcel(722, 3)),  #己方银行0
         (By.XPATH, '//*[@id="searchForm"]/div[1]/div/div/ul/li[2]'),#1
         (By.XPATH, eleData.readExcel(723, 3)),  # 查询2
         (By.XPATH, eleData.readExcel(724, 3)),  # 新增3
         (By.XPATH, eleData.readExcel(725, 3)),  # 修改4
         (By.XPATH, eleData.readExcel(726, 3)),  # 删除5
         (By.XPATH, eleData.readExcel(727, 3)),  # 数据导入6
         (By.XPATH, eleData.readExcel(728, 3)),  # 批量代付7
         (By.XPATH, eleData.readExcel(729, 3)),  # 导出模板8
         (By.XPATH, eleData.readExcel(730, 3)),  # 新增内银行9
         (By.XPATH, eleData.readExcel(731, 3)),  # 提交10
         (By.XPATH, eleData.readExcel(732, 3)),  # 取消11
         (By.XPATH, eleData.readExcel(733, 3)),  # 卡,折12
         (By.XPATH, eleData.readExcel(734, 3)),  # 修改提交13
         (By.XPATH, eleData.readExcel(735, 3)),  # 修改取消14
         (By.XPATH, eleData.readExcel(736, 3)),  # 删除确定按钮15
         (By.XPATH, eleData.readExcel(737, 3)),  # 删除消按钮16
         (By.XPATH, eleData.readExcel(738, 3)),  # 数据导入提交17
         (By.XPATH, eleData.readExcel(739, 3)),  # 数据导入取消18
         (By.XPATH, eleData.readExcel(740, 3)),  # 关闭支付19
         (By.XPATH, eleData.readExcel(741, 3)), # 确定支付20
         (By.XPATH, '//*[@id="defaultForm"]/div[1]/div/div/div/ul/li[2]'),#新增银行21
         (By.XPATH, '//*[@id="defaultForm"]/div[1]/div/div/div/ul/li[3]'),#修改银行22
         (By.ID, 'file_input')]#上传23

    #输入框
    input_list = \
        [(By.XPATH, eleData.readExcel(742, 3)),  #收款人0
         (By.XPATH, eleData.readExcel(743, 3)),  # 收款账号1
         (By.XPATH, eleData.readExcel(744, 3)),  # 摘要2
         (By.XPATH, eleData.readExcel(745, 3)),  #收款人3
         (By.XPATH, eleData.readExcel(746, 3)),  # 收款账号4
         (By.XPATH, eleData.readExcel(747, 3)),  # 金额5
         (By.XPATH, eleData.readExcel(748, 3)),  #备注6
         (By.XPATH, eleData.readExcel(749, 3)),  # 全选7
         (By.XPATH, eleData.readExcel(750, 3)), # 第一项8
         (By.XPATH, eleData.readExcel(751, 3)), #支付输入9
         (By.XPATH, '//*[@id="mychart1"]/tbody/tr[2]/td[1]/input')]#第二项10

    #验证信息
    msg_list = \
        [(By.XPATH, eleData.readExcel(752, 3)),  #右上提示0
         (By.XPATH, eleData.readExcel(753, 3)),  #查询验证1
         (By.XPATH, eleData.readExcel(754, 3)),  #新增窗口验证2
         (By.XPATH, eleData.readExcel(755, 3)),  #修改窗口验证3
         (By.XPATH, eleData.readExcel(756, 3)),  #删除窗口窗口4
         (By.XPATH, eleData.readExcel(757, 3)),  #数据导入5
         (By.XPATH, eleData.readExcel(758, 3)),  #批量代付6
         (By.XPATH, eleData.readExcel(759, 3)),  # 查询失败7
         (By.XPATH, eleData.readExcel(760, 3)),  # 新增银行不能为空8
         (By.XPATH, eleData.readExcel(761, 3)),  # 新增收款人不能为空9
         (By.XPATH, eleData.readExcel(762, 3)),  # 新增金额不能为空10
         (By.XPATH, eleData.readExcel(763, 3)),  # 新增摘要不能为空11
         (By.XPATH, eleData.readExcel(764, 3)),  # 修改账号不能为空12
         (By.XPATH, eleData.readExcel(765, 3)),  # 修改金额不能为空13
         (By.XPATH, eleData.readExcel(766, 3)),  # 修改账号非数字14
         (By.XPATH, eleData.readExcel(767, 3)),  # 新增账号非数字15
         (By.XPATH, eleData.readExcel(768, 3)),  #修改成功提示16
         (By.XPATH, eleData.readExcel(769, 3))]  #删除成功提示17

    #上传
    uploaddata = (By.ID, 'file_input')
    # 测试数据
    valueList = [
        '测试', '98032230389911653019', '123456', '黄岛一', '6215210200005034', '1',
        '2', '不能为空', '请输入有效的数字', '新增成功', '请选中一项内容', '请选中一项内容进行修改', '修改成功',
        '测试', '98032230389911653019', '2020-06-22测试', '折(P)', '导入失败', '导入成功',
        '密码输入错误', '代付成功'
    ]
    reason = time.strftime('%Y-%m-%d') + '测试'

    def inissuing(self):
        '''
        进入母子代付页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_23_a').click()  # 点击银农直联系统
        time.sleep(1)
        Silverfarmersul = self.findElement(*self.Silverfarmersul)
        Silverfarmersul.find_element_by_xpath(
            '//*[@id="sidebarTree_32"]').click()  # 点击代付功能
        time.sleep(1)
        payul = self.findElement(*self.payul)
        payul.find_element_by_id('sidebarTree_33').click()  # 点击母子代付
        time.sleep(1)
        log.logger.info(
            'page[%s] :found the menu [%s] and [%s]' %
            (sys._getframe().f_code.co_name, self.menuList[0], self.payul))

    def cBtn(self, button):
        '''
        点击按钮
        :return:
        '''
        btn = self.findElement(*button)
        try:
            btn.click()
        except Exception:
            log.logger.exception('can not the button ', exc_info=True)
            raise
        else:
            log.logger.info('page[%s]:clicking the button [%s]' %
                            (sys._getframe().f_code.co_name, button))

    def uploadfalse(self):
        '''
        上传
        :return:
        '''
        js = 'document.getElementById("file_input").style.display="block";'
        self.jScript(js)
        self.findElement(*self.button_list[23]).send_keys(
            'F:\TestDownloads\\log.xml')  # 定位上传按钮,添加本地文件
        time.sleep(3)

    def uploadtrue(self):
        '''
        上传
        :return:
        '''
        js = 'document.getElementById("file_input").style.display="block";'
        self.jScript(js)
        self.findElement(*self.button_list[23]).send_keys(
            'F:\TestDownloads\\银农直联代付模板True.xlsx')  # 定位上传按钮,添加本地文件
        time.sleep(3)
コード例 #10
0
class UserPage(BasePage):
    '''
        用户管理
    '''
    #查询数据
    valuesList = [queryData.readExcel(1, 1), int(queryData.readExcel(2, 1)), queryData.readExcel(3, 1)]
    # 测试新增数据
    reason = time.strftime('%Y-%m-%d:%H:%M:%S') + '测试'
    valueList = ['testname','name', 'test11', '123456', '15864901722','12345678a.']

    #基础功能列表
    functionList = (By.ID, eleData.readExcel(18, 3))
    #机构管理
    usergl = (By.ID, eleData.readExcel(20, 3))
    #用户管理页面
    UserPage = (By.XPATH,eleData.readExcel(47,3))
    #查询条件 昵称,手机号,登录账号
    query_list = [(By.XPATH, eleData.readExcel(48,3)),(By.XPATH, eleData.readExcel(49,3)),
                  (By.XPATH, eleData.readExcel(50,3))]

    #全部按钮
    button_list = \
        [(By.ID, eleData.readExcel(52,3)),#查询按钮0
         (By.ID, eleData.readExcel(53,3)),#新增按钮1
         (By.ID, eleData.readExcel(54,3)),#修改按钮2
         (By.ID, eleData.readExcel(55,3)),#删除按钮3
         (By.ID, eleData.readExcel(56,3)),#机构分配按钮4
         (By.ID, eleData.readExcel(57,3)),#账套分配按钮5
         (By.ID, eleData.readExcel(58,3)),#权限分配按钮6
         (By.ID, eleData.readExcel(59,3)),#地区分配按钮7
         (By.ID, eleData.readExcel(60,3)),#新增提交按钮8
         (By.ID, eleData.readExcel(61,3)),#新增取消按钮9
         (By.ID, eleData.readExcel(62,3)),#修改提交按钮10
         (By.ID, eleData.readExcel(63,3)),#修改取消按钮11
         (By.ID, eleData.readExcel(64,3)),#删除确定按钮12
         (By.XPATH, eleData.readExcel(65,3)),#删除取消按钮13
         (By.ID, eleData.readExcel(66,3)),#机构,账套,权限,地区提交按钮14
         (By.ID, eleData.readExcel(66, 3)),#机构,账套,权限,地区取消按钮15
         (By.XPATH, eleData.readExcel(68, 3)),#机构分配所有展开按钮16
         (By.LINK_TEXT, eleData.readExcel(69, 3)),#选择机构17
         (By.XPATH, eleData.readExcel(72, 3)),#账套全选按钮18
         (By.XPATH, eleData.readExcel(75, 3)),#权限全选按钮19
         (By.LINK_TEXT, eleData.readExcel(78, 3))]#选择地区20

    #角色成功验证
    querymsg = \
         [(By.XPATH,eleData.readExcel(79,3)),#角色验证
          (By.XPATH,eleData.readExcel(80,3))]#昵称,手机号,登录账号验证

    #新增用户
    addinput = \
        [(By.XPATH,eleData.readExcel(81,3)),#用户名0
         (By.XPATH,eleData.readExcel(82,3)),#昵称1
         (By.XPATH,eleData.readExcel(83,3)),#登录账号2
         (By.XPATH,eleData.readExcel(84,3)),#密码3
         (By.XPATH,eleData.readExcel(85,3)),#手机号4
         (By.XPATH,eleData.readExcel(86,3)),#所属机构5
         (By.ID,eleData.readExcel(87,3)),#选择机构6
         (By.XPATH,eleData.readExcel(88,3)),#用户名为空提示7
         (By.XPATH,eleData.readExcel(89,3)),#昵称为空提示8
         (By.XPATH,eleData.readExcel(90,3)),#登录账号为空提示9
         (By.XPATH,eleData.readExcel(91,3)),#密码为空提示10
         (By.XPATH,eleData.readExcel(92,3)),#手机号为空提示11
         (By.XPATH,eleData.readExcel(93,3)),#手机号格式不正确12
         (By.XPATH,eleData.readExcel(94,3)),#新增成功提示13
         (By.ID, eleData.readExcel(95, 3)),#所属机构提交按钮14
         (By.ID, eleData.readExcel(96, 3)),#所属机构取消按钮15
         (By.NAME, eleData.readExcel(97,3))]#角色16

    #修改用户
    updateuser = \
        [(By.XPATH, eleData.readExcel(98, 3)),#不选择修改项点击修改提示0
         (By.XPATH, eleData.readExcel(99, 3)),#选择多项修改项点击修改提示1
         (By.XPATH, eleData.readExcel(100, 3)),#全选框2
         (By.XPATH, eleData.readExcel(101, 3)),#选择一项3
         (By.XPATH, eleData.readExcel(102, 3)),#登录账号4
         (By.XPATH, eleData.readExcel(103, 3)),#登录密码5
         (By.XPATH, eleData.readExcel(104, 3)),#登录账号为空提示6
         (By.XPATH, eleData.readExcel(105, 3)),#登录密码为空提示7
         (By.XPATH, eleData.readExcel(106, 3)),#修改成功提示8
         (By.XPATH, eleData.readExcel(107, 3)),#修改登录账号成功验证9
         (By.XPATH, eleData.readExcel(108, 3)),#修改性别成功验证10
         (By.XPATH, eleData.readExcel(109, 3))]#修改角色成功验证11

    #删除用户
    deleteuser = \
        [(By.XPATH, eleData.readExcel(110, 3)),#点击删除提示0
         (By.XPATH, eleData.readExcel(111, 3)),#删除成功提示1
         (By.XPATH, eleData.readExcel(112, 3)),#删除项2
         (By.XPATH, eleData.readExcel(113, 3))]#删除验证3

    #分配
    allot = \
        [(By.XPATH, eleData.readExcel(114, 3)),#不选择分配项点击。。分配提示0
         (By.XPATH, eleData.readExcel(115, 3)),#选择多项分配项点击。。分配提示1
         (By.XPATH, eleData.readExcel(116, 3)),#分配成功提示2
         (By.XPATH, eleData.readExcel(117, 3)),#机构分配成功验证3
         (By.XPATH, eleData.readExcel(118, 3))]#地区分配成功验证4

    #用户管理
    def inUserPage(self):
        '''
        进入用户管理页面
        :return:
        '''

        leftMenu = self.findElement(*self.menuList[0])#左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_16_a').click()#点击基础功能
        time.sleep(1)
        userList = self.findElement(*self.functionList)
        userList.find_element_by_xpath('//*[@id="sidebarTree_18_a"]').click()#点击用户管理
        time.sleep(1)
        log.logger.info('page [%s] :found the menu [%s] and [%s]' % (
        sys._getframe().f_code.co_name, self.menuList[0], self.functionList))

    #输入查询条件
    def iQueryCondition(self, NamePhonelogin, value):
        """
        :param NamePhonelogin:
        :param value:
        :return:
        """
        name_phone_login = self.findElement(*NamePhonelogin)
        try:
            name_phone_login.clear()
            name_phone_login.send_keys(str(value))
        except Exception:
            log.logger.exception('input value error', exc_info=True)
            raise
        else:
            log.logger.info('[%s] is typing value [%s] ' % (NamePhonelogin, value))

    # 获取条件输入框的内容
    def getInputboxValue(self, *query_list):
        '''

        :param query_list:
        :return:
        '''
        try:
            get_query_text = self.findElement(*query_list)
            text = get_query_text.get_attribute('value')
        except Exception:
            log.logger.exception('get value of element fail', exc_info=True)
            raise
        else:
            log.logger.info('get value [%s] of element [%s] success' % (query_list, text))
            return text

    # 重置功能的重写
    def reset(self):
        """

        :return:
        """
        try:
            self.findElement(*self.query_list[0]).clear()
            self.findElement(*self.query_list[1]).clear()
            self.findElement(*self.query_list[2]).clear()
        except Exception:
            log.logger.exception('reset fail', exc_info=True)
            raise
        else:
            log.logger.info('reset [%s]-[%s]-[%s] success' % (
                self.query_list[0], self.query_list[1], self.query_list[2]))

    # 点击按钮
    def cBtn(self,button):
        btn = self.findElement(*button)
        try:
            btn.click()
        except Exception:
            log.logger.exception(
                'can not click the button' ,exc_info=True)
        else:
            log.logger.info(
                'page [%s] :clicking the button [%s]' % (sys._getframe().f_code.co_name ,button))
 # 输入一组数据
    def inputGroupValue(self, element_list, value_list,value_listupdate):
        """

        :param element_list: 一组元素列表
        :param value_list: 一组数据列表
        :return: none
        """
        for eleLen in range(len(element_list)):
            try:
                self.inputValue(element_list[eleLen], value_list[eleLen])
                self.inputValue(element_list[eleLen], value_listupdate[eleLen])
            except Exception:
                log.logger.exception('element [%s] type value [%s] wrong !' %(element_list[eleLen], value_list[eleLen]))
                raise
            else:
                log.logger.info('element [%s] is typing value [%s]' %(element_list[eleLen], value_list[eleLen]))

    def clearValue(self,clear):
        '''
        清空输入项
        :param clear:
        :return:
        '''
        input_clear = self.findElement(*clear)
        try:
            input_clear.clear()
        except Exception:
            log.logger.exception(
                'can not clear input', exc_info=True)
        else:
            log.logger.info(
                'page [%s] :clearing input [%s]' % (sys._getframe().f_code.co_name, clear))
コード例 #11
0
class RolePage(BasePage):
    '''
        角色管理
    '''

    # 查询数据
    valuesList = [
        queryData.readExcel(4, 1),
        int(queryData.readExcel(5, 1)),
        queryData.readExcel(6, 1)
    ]
    # 测试数据
    reason = time.strftime('%Y-%m-%d:%H:%M:%S') + '测试'
    valueList = ['testname', '1', 'test']
    # 基础功能列表
    functionList = (By.ID, eleData.readExcel(18, 3))
    # 角色管理页面
    RolePage = (By.XPATH, eleData.readExcel(119, 3))
    # 查询条件 角色,表示位,描述
    query_list = [(By.XPATH, eleData.readExcel(120, 3)),
                  (By.XPATH, eleData.readExcel(121, 3)),
                  (By.XPATH, eleData.readExcel(122, 3))]
    #所有按钮
    button_list = \
        [(By.ID, eleData.readExcel(123, 3)),#查询按钮0
         (By.ID, eleData.readExcel(124, 3)),#新增按钮1
         (By.ID, eleData.readExcel(125, 3)),#修改按钮2
         (By.ID, eleData.readExcel(126, 3)),#菜单分配按钮3
         (By.ID, eleData.readExcel(127, 3)),#按钮分配按钮4
         (By.ID, eleData.readExcel(128, 3)),#新增提交按钮5
         (By.ID, eleData.readExcel(129, 3)),#新增取消按钮6
         (By.ID, eleData.readExcel(130, 3)),#修改,菜单、按钮分配提交按钮7
         (By.ID, eleData.readExcel(131, 3)),#修改,菜单、按钮分配取消按钮8
         (By.ID, eleData.readExcel(132, 3)),#选择分配菜单9
         (By.ID, eleData.readExcel(133, 3)),#按钮新增10
         (By.ID, eleData.readExcel(134, 3)),#按钮修改11
         (By.ID, eleData.readExcel(135, 3)),#按钮删除12
         (By.ID, eleData.readExcel(136, 3)),#按钮分配功能开发展开13
         (By.LINK_TEXT, eleData.readExcel(137, 3))]#选择页面14
    #查询验证
    query_msg = \
         [(By.XPATH, eleData.readExcel(138, 3)),
          (By.XPATH, eleData.readExcel(139, 3)) ]
    #新增角色
    addrole_list = \
        [(By.XPATH, eleData.readExcel(140, 3)),#角色名称输入框0
         (By.XPATH, eleData.readExcel(141, 3)),#表示位输入框1
         (By.XPATH, eleData.readExcel(142, 3)),#描述输入框2
         (By.CSS_SELECTOR, eleData.readExcel(143, 3)),#角色名称为空提示3
         (By.CSS_SELECTOR, eleData.readExcel(144, 3)),#表示位为空提示4
         (By.CSS_SELECTOR, eleData.readExcel(145, 3)),#描述为空提示5
         (By.XPATH, eleData.readExcel(146, 3))]#新增成功提示6
    #修改角色
    updaterole_list = \
        [(By.XPATH, eleData.readExcel(147, 3)),#修改项0
         (By.XPATH, eleData.readExcel(148, 3)),#全选框1
         (By.XPATH, eleData.readExcel(149, 3)),#角色名称输入框2
         (By.XPATH, eleData.readExcel(150, 3)),#表示位输入框3
         (By.XPATH, eleData.readExcel(151, 3)),#描述输入框4
         (By.CSS_SELECTOR, eleData.readExcel(152, 3)),#角色名称为空提示5
         (By.CSS_SELECTOR, eleData.readExcel(153, 3)),#表示位为空提示6
         (By.CSS_SELECTOR, eleData.readExcel(154, 3)),#描述为空提示7
         (By.XPATH, eleData.readExcel(155, 3))]#修改成功提示8
    #按钮分配
    buttonAssigned_list = \
         [(By.XPATH, eleData.readExcel(156, 3)),#按钮分配窗口0
          (By.XPATH, eleData.readExcel(157, 3)),#新增按钮名称输入框1
          (By.XPATH, eleData.readExcel(158, 3)),#新增英文名称输入框2
          (By.XPATH, eleData.readExcel(159, 3)),#新增表示位输入框3
          (By.XPATH, eleData.readExcel(160, 3)),#新增按钮图标输入框4
          (By.XPATH, eleData.readExcel(161, 3)),#新增描述输入框5
          (By.XPATH, eleData.readExcel(162, 3)),#新增提交按钮6
          (By.XPATH, eleData.readExcel(163, 3)),#新增取消按钮7
          (By.XPATH, eleData.readExcel(164, 3)),#新增按钮窗口8
          (By.XPATH, eleData.readExcel(165, 3)),#修改项9
          (By.XPATH, eleData.readExcel(166, 3)),#全选框10
          (By.XPATH, eleData.readExcel(167, 3)),#修改按钮名称输入框11
          (By.XPATH, eleData.readExcel(168, 3)),#修改英文名称输入框12
          (By.XPATH, eleData.readExcel(169, 3)),#修改表示位输入框13
          (By.XPATH, eleData.readExcel(170, 3)),#修改按钮图标输入框14
          (By.XPATH, eleData.readExcel(171, 3)),#修改描述输入框15
          (By.XPATH, eleData.readExcel(172, 3)),#修改提交按钮16
          (By.XPATH, eleData.readExcel(173, 3)),#修改取消按钮17
          (By.XPATH, eleData.readExcel(174, 3)),#修改按钮窗口18
          (By.XPATH, eleData.readExcel(175, 3)),#删除框19
          (By.XPATH, eleData.readExcel(176, 3)),#删除确定按钮20
          (By.XPATH, eleData.readExcel(177, 3)),#删除取消按钮21
          (By.XPATH, eleData.readExcel(178, 3)),#删除项22
          (By.XPATH, eleData.readExcel(179, 3)),#新增按钮名称为空提示23
          (By.XPATH, eleData.readExcel(180, 3)),#新增英文名称为空提示24
          (By.XPATH, eleData.readExcel(181, 3)),#新增表示位为空提示25
          (By.XPATH, eleData.readExcel(182, 3)),#新增按钮图标为空提示26
          (By.XPATH, eleData.readExcel(183, 3)),#新增描述为空提示27
          (By.XPATH, eleData.readExcel(184, 3)),#修改按钮名称为空提示28
          (By.XPATH, eleData.readExcel(185, 3)),#修改英文名称为空提示29
          (By.XPATH, eleData.readExcel(186, 3)),#修改表示位为空提示30
          (By.XPATH, eleData.readExcel(187, 3)),#修改按钮图标为空提示31
          (By.XPATH, eleData.readExcel(188, 3)),#修改描述为空提示32
          (By.XPATH, eleData.readExcel(189, 3))]#关闭按钮分配验证33

    def inRolePage(self):
        '''
        进入角色管理页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  #左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_16_a').click()  #点击基础功能
        time.sleep(1)
        userList = self.findElement(*self.functionList)
        userList.find_element_by_xpath(
            '//*[@id="sidebarTree_19_a"]').click()  #点击角色管理
        time.sleep(1)
        log.logger.info('page [%s] :found the menu [%s] and [%s]' %
                        (sys._getframe().f_code.co_name, self.menuList[0],
                         self.functionList))

    #输入查询条件
    def iQueryCondition(self, roleshowdescribe, value):
        '''
        :param roleshowdescribe:
        :param value:
        :return:
        '''
        role_show_describe = self.findElement(*roleshowdescribe)
        try:
            role_show_describe.clear()
            role_show_describe.send_keys(str(value))
        except Exception:
            log.logger.exception('input value error', exc_info=True)
            raise
        else:
            log.logger.info('[%s] is typing value [%s] ' %
                            (roleshowdescribe, value))

    #获取条件输入框内容
    def getInputboxValue(self, *query_list):
        '''
        :param query_list:
        :return:
        '''
        try:
            get_query_text = self.findElement(*query_list)
            text = get_query_text.get_attribute('value')
        except Exception:
            log.logger.exception('get value of element fail', exc_info=True)
            raise
        else:
            log.logger.info('get value[%s] of element[%s] success' %
                            (query_list, text))
            return text

    #重置功能的重写
    def reset(self):
        '''

        :return:
        '''
        try:
            self.findElement(*self.query_list[0]).clear()
            self.findElement(*self.query_list[1]).clear()
            self.findElement(*self.query_list[2]).clear()
        except Exception:
            log.logger.exception('reset fail', exc_info=True)
            raise
        else:
            log.logger.info(
                'reset [%s]-[%s]-[%s] success' %
                (self.query_list[0], self.query_list[1], self.query_list[2]))

    #点击按钮
    def cBtn(self, button):
        btn = self.findElement(*button)
        try:
            btn.click()
        except Exception:
            log.logger.exception('can not the button', exc_info=True)
            raise
        else:
            log.logger.info('page [%s] :clicking the button [%s]' %
                            (sys._getframe().f_code.co_name, button))

    #清空输入项
    def clearValue(self, clear):
        '''
        清空输入项
        :param clear:
        :return:
        '''
        input_clear = self.findElement(*clear)
        try:
            input_clear.clear()
        except Exception:
            log.logger.exception('can not clear input', exc_info=True)
        else:
            log.logger.info('page [%s] :clearing input [%s]' %
                            (sys._getframe().f_code.co_name, clear))
コード例 #12
0
class Transfer_Page(BasePage):
    '''
    批量转账
    '''
    # 银农直联系统
    Silverfarmers = (By.XPATH, eleData.readExcel(14, 3))
    # 银农直联列表
    Silverfarmersul = (By.XPATH, '//*[@id="sidebarTree_23_ul"]')
    # 转账功能
    pay = (By.XPATH, '//*[@id="sidebarTree_24"]')
    # 转账功能列表
    payul = (By.XPATH, '//*[@id="sidebarTree_24_ul"]')
    # 批量转账
    transfer = (By.XPATH, eleData.readExcel(227, 3))
    #输入框
    input_list = \
        [(By.XPATH,eleData.readExcel(296,3)),#对方户名新增、修改0
         (By.XPATH,eleData.readExcel(297,3)),#对方账号新增、修改1
         (By.XPATH,eleData.readExcel(298,3)),#金额新增、修改2
         (By.XPATH,eleData.readExcel(299,3)),#备注新增、修改3
         (By.XPATH,eleData.readExcel(300,3)),#联行号新增、修改4
         (By.XPATH,eleData.readExcel(301,3)),#开户机构新增、修改5
         (By.XPATH,eleData.readExcel(302,3))]#交易密码6
    #按钮
    button_list = \
        [(By.ID, eleData.readExcel(303, 3)),#查询按钮0
         (By.ID, eleData.readExcel(304, 3)),#新增按钮1
         (By.ID, eleData.readExcel(305, 3)),#修改按钮2
         (By.ID, eleData.readExcel(306, 3)),#删除按钮3
         (By.ID, eleData.readExcel(307, 3)),#数据导入4
         (By.ID, eleData.readExcel(308, 3)),#批量转账5
         (By.ID, eleData.readExcel(309, 3)),#导出模板6
         (By.XPATH, eleData.readExcel(310, 3)),#选择打开银行(新增,修改)7
         (By.XPATH, eleData.readExcel(311, 3)),#选择银行(新增8
         (By.XPATH, eleData.readExcel(312, 3)),#提交(新增)9
         (By.XPATH, eleData.readExcel(313, 3)),#取消(新增)10
         (By.XPATH, eleData.readExcel(314, 3)),#选择银行(修改)11
         (By.ID, eleData.readExcel(315, 3)),#提交(修改)12
         (By.ID, eleData.readExcel(316, 3)),#取消(修改)13
         (By.ID, eleData.readExcel(317, 3)),#确定(删除)14
         (By.XPATH, eleData.readExcel(318, 3)),#取消(删除)15
         (By.ID, eleData.readExcel(319, 3)),#上传16
         (By.ID, eleData.readExcel(320, 3)),#导入数据(提交)17
         (By.ID, eleData.readExcel(321, 3)),#导入数据(取消)18
         (By.XPATH, eleData.readExcel(322, 3)),#确定支付(关闭)19
         (By.XPATH, eleData.readExcel(323, 3)),#确定支付(确定)20
         (By.XPATH, '//*[@id="searchForm"]/div[1]/div/button'),#己方户名21
         (By.XPATH, '//*[@id="searchForm"]/div[1]/div/div/ul/li[4]/a')]#己方户名中一项22
    #验证
    msg_list = \
        [(By.XPATH, eleData.readExcel(324, 3)),#银行存款为空验证0
         (By.XPATH, eleData.readExcel(325, 3)),#对方户名为空验证1
         (By.XPATH, eleData.readExcel(326, 3)),#对方账号为空验证2
         (By.XPATH, eleData.readExcel(327, 3)),#备注为空验证3
         (By.XPATH, eleData.readExcel(328, 3)),#联行号为空验证(新增、修改)4
         (By.XPATH, eleData.readExcel(329, 3)),#开户机构为空验证(新增、修改)5
         (By.XPATH, eleData.readExcel(330, 3)),#金额(修改)为空验证6
         (By.XPATH, eleData.readExcel(331, 3)),#右上角提示7
         (By.XPATH, eleData.readExcel(332, 3)),#查询验证8
         (By.XPATH, eleData.readExcel(333, 3)),#新增窗口9
         (By.XPATH, eleData.readExcel(334, 3)),#修改窗口10
         (By.XPATH, eleData.readExcel(335, 3)),#删除窗口11
         (By.XPATH, eleData.readExcel(336, 3)),#数据导入窗口12
         (By.XPATH, eleData.readExcel(337, 3)),#确定支付窗口13
         (By.XPATH, '//*[@id="defaultForm"]/div[4]/div/small[1]'),#修改账号为空14
         (By.XPATH, '//*[@id="defaultForm"]/div[4]/div/small[2]'),#修改输入错误账号15
         (By.XPATH, '/html/body/div[5]'),#删除验证16
         (By.XPATH, '//*[@id="confirmPayPw"]/div/div'),#关闭转账验证17
         (By.XPATH, '//*[@id="container-fluid"]/div[1]/div/div/div[2]/div[1]/div[2]/div[4]/div[1]/span[1]')]#18
    #选框
    checkbox_list = \
        [(By.XPATH, eleData.readExcel(338, 3)),#全选框0
         (By.XPATH, eleData.readExcel(339, 3)),#修改项1
         (By.XPATH, eleData.readExcel(340, 3))]#删除项2
    # 查询条件 昵称,手机号,登录账号
    query_list = [(By.XPATH, eleData.readExcel(293, 3)),
                  (By.XPATH, eleData.readExcel(294, 3)),
                  (By.XPATH, eleData.readExcel(295, 3))]
    # 查询数据
    valuesList = [
        queryData.readExcel(7, 1),
        int(queryData.readExcel(8, 1)),
        queryData.readExcel(9, 1)
    ]
    #测试数据
    valueList = [
        'test', '123456789123456', '1', '123594422111', '123456', '不能为空',
        '请输入有效的数字', '新增成功', '请选中一项内容', '请选中一项内容进行修改', '修改成功', '导入数据', '删除成功',
        '导入成功', '总共 3 条记录'
    ]
    reason = time.strftime('%Y-%m-%d:%H-%M-%S') + '测试'

    def intransfer(self):
        '''
        进入批量转账页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_23_a').click()  # 点击银农直联系统
        time.sleep(1)
        Silverfarmersul = self.findElement(*self.Silverfarmersul)
        Silverfarmersul.find_element_by_xpath(
            '//*[@id="sidebarTree_24_a"]').click()  # 点击转账功能
        time.sleep(1)
        payul = self.findElement(*self.payul)
        payul.find_element_by_id('sidebarTree_26').click()  # 点击批量转账
        time.sleep(1)
        log.logger.info(
            'page[%s] :found the menu [%s] and [%s]' %
            (sys._getframe().f_code.co_name, self.menuList[0], self.payul))

    #输入查询条件
    def iQueryCondition(self, NameIdOrgan, value):
        """
        :param NameIdOrgan:
        :param value:
        :return:
        """
        name_phone_login = self.findElement(*NameIdOrgan)
        try:
            name_phone_login.clear()
            name_phone_login.send_keys(str(value))
        except Exception:
            log.logger.exception('input value error', exc_info=True)
            raise
        else:
            log.logger.info('[%s] is typing value [%s] ' %
                            (NameIdOrgan, value))

    # 获取条件输入框的内容
    def getInputboxValue(self, *query_list):
        '''

        :param query_list:
        :return:
        '''
        try:
            get_query_text = self.findElement(*query_list)
            text = get_query_text.get_attribute('value')
        except Exception:
            log.logger.exception('get value of element fail', exc_info=True)
            raise
        else:
            log.logger.info('get value [%s] of element [%s] success' %
                            (query_list, text))
            return text

    # 重置功能的重写
    def reset(self):
        """

        :return:
        """
        try:
            self.findElement(*self.query_list[0]).clear()
            self.findElement(*self.query_list[1]).clear()
            self.findElement(*self.query_list[2]).clear()
        except Exception:
            log.logger.exception('reset fail', exc_info=True)
            raise
        else:
            log.logger.info(
                'reset [%s]-[%s]-[%s] success' %
                (self.query_list[0], self.query_list[1], self.query_list[2]))

    # 点击按钮
    def cBtn(self, button):
        btn = self.findElement(*button)
        try:
            btn.click()
        except Exception:
            log.logger.exception('can not click the button', exc_info=True)
        else:
            log.logger.info('page [%s] :clicking the button [%s]' %
                            (sys._getframe().f_code.co_name, button))

    # 输入一组数据
    def inputGroupValue(self, element_list, value_list, value_listupdate):
        """
        :param element_list: 一组元素列表
        :param value_list: 一组数据列表
        :return: none
        """
        for eleLen in range(len(element_list)):
            try:
                self.inputValue(element_list[eleLen], value_list[eleLen])
                self.inputValue(element_list[eleLen], value_listupdate[eleLen])
            except Exception:
                log.logger.exception(
                    'element [%s] type value [%s] wrong !' %
                    (element_list[eleLen], value_list[eleLen]))
                raise
            else:
                log.logger.info('element [%s] is typing value [%s]' %
                                (element_list[eleLen], value_list[eleLen]))

    def clearValue(self, clear):
        '''
        清空输入项
        :param clear:
        :return:
        '''
        input_clear = self.findElement(*clear)
        try:
            input_clear.clear()
        except Exception:
            log.logger.exception('can not clear input', exc_info=True)
        else:
            log.logger.info('page [%s] :clearing input [%s]' %
                            (sys._getframe().f_code.co_name, clear))

    def uploadfalse(self):
        '''
        上传
        :return:
        '''
        js = 'document.getElementById("file_input").style.display="block";'
        self.jScript(js)
        self.findElement(*self.button_list[16]).send_keys(
            'F:\TestDownloads\\log.xml')  # 定位上传按钮,添加本地文件
        time.sleep(3)

    def uploadture(self):
        '''
        上传
        :return:
        '''
        js = 'document.getElementById("file_input").style.display="block";'
        self.jScript(js)
        self.findElement(*self.button_list[16]).send_keys(
            'F:\TestDownloads\\银农直联批量转账true.xlsx')  # 定位上传按钮,添加本地文件
        time.sleep(3)
コード例 #13
0
class OwnBanks_Page(BasePage):
    '''
    己方银行设置
    '''
    # 银农直联系统
    Silverfarmers = (By.XPATH, eleData.readExcel(14, 3))
    # 银农直联列表
    Silverfarmersul = (By.XPATH, '//*[@id="sidebarTree_23_ul"]')
    # 设置与维护
    set = (By.XPATH, '//*[@id="sidebarTree_36"]')
    # 设置与维护列表
    setul = (By.XPATH, '//*[@id="sidebarTree_36_ul"]')
    # 己方银行
    ownBanks = (By.XPATH, eleData.readExcel(233, 3))
    # 己方银行设置页面
    ownBankspage = (By.XPATH, eleData.readExcel(378, 3))
    # 查询条件 开户机构,户名,账号,银行名称
    query_list = [(By.XPATH, eleData.readExcel(379, 3)),
                  (By.XPATH, eleData.readExcel(380, 3)),
                  (By.XPATH, eleData.readExcel(381, 3))]
    # 查询数据
    valuesList = [
        queryData.readExcel(13, 1),
        queryData.readExcel(14, 1),
        queryData.readExcel(15, 1),
        queryData.readExcel(16, 1)
    ]
    #输入框
    input_list = \
        [(By.XPATH, eleData.readExcel(383, 3)),#银行名称(新增,修改)0
         (By.XPATH, eleData.readExcel(384, 3)),#户名(新增,修改)1
         (By.XPATH, eleData.readExcel(385, 3)),#开户机构(新增,修改)2
         (By.XPATH, eleData.readExcel(386, 3)),#账户号码(新增,修改)3
         (By.XPATH, eleData.readExcel(387, 3)),#子账户客户号(新增,修改)4
         (By.XPATH, eleData.readExcel(388, 3)),#短信接收人(新增)5
         (By.XPATH, eleData.readExcel(389, 3)),#短信接收人手机号(新增)6
         (By.XPATH, eleData.readExcel(390, 3)),#联行号(新增,修改)7
         (By.XPATH, eleData.readExcel(391, 3)),#短信接收人(修改)8
         (By.XPATH, eleData.readExcel(392, 3))]#短信接收人手机号(修改)9
    #点击元素
    button_list = \
         [(By.ID, eleData.readExcel(393, 3)),#查询0
          (By.ID, eleData.readExcel(394, 3)),#新增1
          (By.ID, eleData.readExcel(395, 3)),#修改2
          (By.ID, eleData.readExcel(396, 3)),#删除3
          (By.ID, eleData.readExcel(397, 3)),#查询余额4
          (By.XPATH, eleData.readExcel(398, 3)),#是农商行(新增,修改)5
          (By.XPATH, eleData.readExcel(399, 3)),#否农商行(新增,修改)6
          (By.ID, eleData.readExcel(400, 3)),#提交(新增)7
          (By.ID, eleData.readExcel(401, 3)),#取消(新增)8
          (By.ID, eleData.readExcel(402, 3)),#提交(修改)9
          (By.ID, eleData.readExcel(403, 3)),#取消(修改)10
          (By.XPATH, eleData.readExcel(404, 3)),#确定(删除)11
          (By.XPATH, eleData.readExcel(405, 3)),#取消(删除)12
          (By.XPATH, eleData.readExcel(406, 3))]#数据后查询余额13
    #选框
    check_box = \
         [(By.XPATH, eleData.readExcel(407, 3)),#修改项0(作废)
          (By.XPATH, eleData.readExcel(408, 3)),#删除项1
          (By.XPATH, eleData.readExcel(409, 3))]#全选2
    #检验
    msg_list = \
         [(By.XPATH, eleData.readExcel(410, 3)),#右上角验证0
          (By.XPATH, eleData.readExcel(411, 3)),#新增窗口验证1
          (By.XPATH, eleData.readExcel(412, 3)),#银行名称为空提示(新增,修改)2
          (By.XPATH, eleData.readExcel(413, 3)),#户名为空提示(新增,修改)3
          (By.XPATH, eleData.readExcel(414, 3)),#开户机构为空验证(新增,修改)4
          (By.XPATH, eleData.readExcel(415, 3)),#短信接收人为空验证(新增)5
          (By.XPATH, eleData.readExcel(416, 3)),#短信接收人手机号为空验证(新增)6
          (By.XPATH, eleData.readExcel(417, 3)),#账号为空验证(新增)7
          (By.XPATH, eleData.readExcel(418, 3)),#短信接收人为空验证(修改)8
          (By.XPATH, eleData.readExcel(419, 3)),#短信接收人手机号为空验证(修改)9
          (By.XPATH, eleData.readExcel(420, 3)),#修改窗口验证10
          (By.XPATH, eleData.readExcel(421, 3)),#删除窗口验证11
          (By.XPATH, eleData.readExcel(422, 3)),#查询验证12
          (By.XPATH, '//*[@id="defaultForm"]/div[9]/div/small[2]'),#不规则联行号验证13
          (By.XPATH, '/html/body/div[5]'), #删除提示14
          (By.XPATH, '/html/body/div[6]'),  # 重复验证提示15
          (By.XPATH, '//*[@id="container-fluid"]/div[1]/div/div/div[2]/div[1]/div[2]/div[4]/div[1]/span[1]'),#16查询为空
          (By.XPATH, '//*[@id="defaultForm"]/div[3]/div/small[2]')]#17账号不规则
    # 测试数据
    valueList = [
        '城南支行', '2100011204205000010340', '淄博市淄川区将军路街道查王村股份经济合作社', '总共 0 条记录',
        '不能为空', '13964168531', '新增成功', '淄博市淄川区将军路街道贾官村股份经济合作社', '账户已存在',
        '请选中一项内容', '请选中一项内容进行操作', '修改成功', '请输入有效的数字', '删除成功'
    ]
    reason = time.strftime('%Y-%m-%d:%H-%M-%S') + '测试'

    def InownBankspage(self):
        '''
        进入己方银行设置页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_23_a').click()  # 点击银农直联系统
        time.sleep(1)
        Silverfarmersul = self.findElement(*self.Silverfarmersul)
        Silverfarmersul.find_element_by_xpath(
            '//*[@id="sidebarTree_36_a"]').click()  # 点击设置与维护
        time.sleep(1)
        payul = self.findElement(*self.setul)
        payul.find_element_by_id('sidebarTree_37').click()  # 点击己方银行设置
        time.sleep(1)
        log.logger.info(
            'page[%s] :found the menu [%s] and [%s]' %
            (sys._getframe().f_code.co_name, self.menuList[0], self.setul))

    # 输入查询条件
    def iQueryCondition(self, Accountnamebank, value):
        """
        :param Accountnamebank:
        :param value:
        :return:
        """
        Account_name_bank = self.findElement(*Accountnamebank)
        try:
            Account_name_bank.clear()
            Account_name_bank.send_keys(str(value))
        except Exception:
            log.logger.exception('input value error', exc_info=True)
            raise
        else:
            log.logger.info('[%s] is typing value [%s] ' %
                            (Accountnamebank, value))

    # 获取条件输入框的内容
    def getInputboxValue(self, *query_list):
        '''

        :param query_list:
        :return:
        '''
        try:
            get_query_text = self.findElement(*query_list)
            text = get_query_text.get_attribute('value')
        except Exception:
            log.logger.exception('get value of element fail', exc_info=True)
            raise
        else:
            log.logger.info('get value [%s] of element [%s] success' %
                            (query_list, text))
            return text

    # 重置功能的重写
    def reset(self):
        """

        :return:
        """
        try:
            self.findElement(*self.query_list[0]).clear()
            self.findElement(*self.query_list[1]).clear()
            self.findElement(*self.query_list[2]).clear()
            self.findElement(*self.query_list[3]).clear()
        except Exception:
            log.logger.exception('reset fail', exc_info=True)
            raise
        else:
            log.logger.info('reset [%s]-[%s]-[%s]-[%s] success' %
                            (self.query_list[0], self.query_list[1],
                             self.query_list[2], self.query_list[3]))
コード例 #14
0
class IntegratedQuery_Page(BasePage):
    '''
    转账查询
    '''
    # 银农直联系统
    Silverfarmers = (By.XPATH, eleData.readExcel(14, 3))
    # 银农直联列表
    Silverfarmersul = (By.XPATH, '//*[@id="sidebarTree_23_ul"]')
    # 转账功能
    pay = (By.XPATH, '//*[@id="sidebarTree_24"]')
    # 转账功能列表
    payul = (By.XPATH, '//*[@id="sidebarTree_24_ul"]')
    # 转账查询
    IntegratedQuery = (By.XPATH, eleData.readExcel(228, 3))
    # 转账查询页面
    IntegratedQuerypage = (By.XPATH, eleData.readExcel(342, 3))
    # 查询条件 对方银行,摘要
    query_list = [(By.XPATH, eleData.readExcel(343, 3)),
                  (By.XPATH, eleData.readExcel(344, 3)),
                  (By.XPATH, eleData.readExcel(345, 3))]
    # 查询数据
    valuesList = [
        queryData.readExcel(10, 1),
        queryData.readExcel(11, 1),
        queryData.readExcel(12, 1)
    ]
    #点击元素
    button_list = \
        [(By.XPATH, eleData.readExcel(346, 3)),#开始时间1 0
         (By.XPATH, eleData.readExcel(347, 3)),#开始时间2 1
         (By.XPATH, eleData.readExcel(348, 3)),#查询2
         (By.XPATH, eleData.readExcel(349, 3)),#批量打印3
         (By.XPATH, eleData.readExcel(350, 3)),#切换年4
         (By.XPATH, eleData.readExcel(351, 3)),#切换月5
         (By.XPATH, eleData.readExcel(352, 3)),#选择日6
         (By.XPATH, eleData.readExcel(353, 3)),#确定7
         (By.XPATH, eleData.readExcel(354, 3)),#现在8
         (By.XPATH, eleData.readExcel(355, 3)),#清空9
         (By.XPATH, '//*[@id="searchForm"]/div[1]/div/button'),#己方户名10
         (By.XPATH, '//*[@id="searchForm"]/div[1]/div/div/ul/li[4]/a')]#己方户名中一项11
    # 选框
    checkbox_list = \
        [(By.XPATH, eleData.readExcel(356, 3)),  # 选择一项0
         (By.XPATH, eleData.readExcel(357, 3))]  # 全选1
    #验证
    msg = \
        [(By.XPATH, eleData.readExcel(358, 3)),#单一查询验证
         (By.XPATH, eleData.readExcel(359, 3)),#时间查询验证
         (By.XPATH, eleData.readExcel(360, 3))]#打印验证
    #数据后打印按钮
    dataprint = (By.XPATH, '//*[@id="mychart4"]/tbody/tr[1]/td[14]/a')
    # 数据后刷新按钮
    datarefresh = (By.XPATH, '//*[@id="mychart4"]/tbody/tr[1]/td[15]/a')
    check_list = [
        '总共 264 条记录', '总共 61 条记录', '总共 56 条记录', '总共 0 条记录', '总共 84 条记录',
        '总共 920 条记录', '总共 3600 条记录', '总共 222 条记录'
    ]

    def inIntegratedQuery(self):
        '''
        进入转账查询页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_23_a').click()  # 点击银农直联系统
        time.sleep(1)
        Silverfarmersul = self.findElement(*self.Silverfarmersul)
        Silverfarmersul.find_element_by_xpath(
            '//*[@id="sidebarTree_24_a"]').click()  # 点击转账功能
        time.sleep(1)
        payul = self.findElement(*self.payul)
        payul.find_element_by_id('sidebarTree_27').click()  # 点击批量转账查询
        time.sleep(1)
        log.logger.info(
            'page[%s] :found the menu [%s] and [%s]' %
            (sys._getframe().f_code.co_name, self.menuList[0], self.payul))

    #输入查询条件
    def iQueryCondition(self, MeAdverseAbstract, value):
        """
        :param MeAdverseAbstract:
        :param value:
        :return:
        """
        me_adverse_abstract = self.findElement(*MeAdverseAbstract)
        try:
            me_adverse_abstract.clear()
            me_adverse_abstract.send_keys(value)
        except Exception:
            log.logger.exception('input value error', exc_info=True)
            raise
        else:
            log.logger.info('[%s] is typing value [%s] ' %
                            (MeAdverseAbstract, value))

    # 获取条件输入框的内容
    def getInputboxValue(self, *query_list):
        '''

        :param query_list:
        :return:
        '''
        try:
            get_query_text = self.findElement(*query_list)
            text = get_query_text.get_attribute('value')
        except Exception:
            log.logger.exception('get value of element fail', exc_info=True)
            raise
        else:
            log.logger.info('get value [%s] of element [%s] success' %
                            (query_list, text))
            return text

    # 重置功能的重写
    def reset(self):
        """

        :return:
        """
        try:
            self.findElement(*self.query_list[0]).clear()
            self.findElement(*self.query_list[1]).clear()
            self.findElement(*self.query_list[2]).clear()
        except Exception:
            log.logger.exception('reset fail', exc_info=True)
            raise
        else:
            log.logger.info(
                'reset [%s]-[%s]-[%s] success' %
                (self.query_list[0], self.query_list[1], self.query_list[2]))
コード例 #15
0
class PayDetailedQuery_Page(BasePage):
    '''
        代付明细查询
        '''
    # 银农直联系统
    Silverfarmers = (By.XPATH, eleData.readExcel(14, 3))
    # 银农直联列表
    SilverFarmersul = (By.XPATH, '//*[@id="sidebarTree_23_ul"]')
    # 代付功能
    pay = (By.XPATH, '//*[@id="sidebarTree_32"]')
    # 代付功能列表
    payul = (By.XPATH, '//*[@id="sidebarTree_32_ul"]')
    # 代付结果查询
    paymentquery = (By.XPATH, eleData.readExcel(231, 3))
    # 代付结果查询页面
    parmentquery_page = (By.XPATH, eleData.readExcel(272, 3))

    #点击
    button_list = \
                [(By.XPATH, eleData.readExcel(787, 3)),#己方银行0
                 (By.XPATH, eleData.readExcel(788, 3)),#己方银行一项1
                 (By.XPATH, eleData.readExcel(789, 3))]#查询2
    input_list = \
                [(By.XPATH, eleData.readExcel(790, 3)),  #收款账号0
                 (By.XPATH, eleData.readExcel(791, 3)),  # 收款人1
                 (By.XPATH, eleData.readExcel(792, 3))]  # 摘要2
    msg_list = \
                [(By.XPATH, eleData.readExcel(793, 3)),#存在查询
                 (By.XPATH, eleData.readExcel(794, 3))]#不存在查询
    #测试数据
    valuelist = [
        '测试人员', '98032230389911653018', '黄岛一', '6215210200005034',
        '沂南县蒲汪镇大王庄村股份经济合作社', '交易已受理'
    ]
    # 断言数据
    assertlist = ['显示第 1 到第 0 条记录,总共 0 条记录', '2020-04-03测试']

    def inpaydetailedquery(self):
        '''
            进入代付结果查询页面
            :return:
            '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_23_a').click()  # 点击银农直联
        time.sleep(1)
        Silverfarmersul = self.findElement(*self.SilverFarmersul)
        Silverfarmersul.find_element_by_xpath(
            '//*[@id="sidebarTree_32"]').click()
        time.sleep(1)
        detailedul = self.findElement(*self.payul)
        detailedul.find_element_by_id('sidebarTree_35').click()  # 点击代付明细查询
        time.sleep(1)
        log.logger.info(
            'page[%s]:found the menu [%s]and [%s]' %
            (sys._getframe().f_code.co_name, self.menuList[0], self.payul))
コード例 #16
0
class Analysis_Page(BasePage):
    '''
        年限分析
    '''
    # 合同管理
    contract = (By.XPATH, eleData.readExcel(17, 3))
    # 合同管理列表
    contractul = (By.XPATH, eleData.readExcel(452, 3))
    #点击
    button_list = [
        (By.XPATH, eleData.readExcel(641, 3)),  #所有地区
        (By.XPATH, eleData.readExcel(642, 3)),  #查询
        (By.XPATH, eleData.readExcel(643, 3))
    ]  #查看明细
    #时间控件
    time_list = [
        (By.XPATH, eleData.readExcel(644, 3)),  #签订年度
        (By.XPATH, eleData.readExcel(645, 3)),  #前年
        (By.XPATH, eleData.readExcel(646, 3)),  #点击
        (By.XPATH, eleData.readExcel(647, 3)),  #2018
        (By.XPATH, eleData.readExcel(648, 3))
    ]  #确定
    #选择框
    checkbox = [
        (By.XPATH, eleData.readExcel(649, 3)),  #全选
        (By.XPATH, eleData.readExcel(650, 3))
    ]  #一项
    #验证
    msg_list = [
        (By.XPATH, eleData.readExcel(651, 3)),  #查询验证
        (By.XPATH, eleData.readExcel(652, 3)),  #右上角验证
        (By.XPATH, eleData.readExcel(653, 3))
    ]  #明细窗口
    # 断言数据
    assertlist = ['显示第 1 到第 10 条记录,总共 184 条记录', '请选择一项查看']

    def inanalysispage(self):
        '''
     进入年限分析页面
     :return:
     '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_74_a').click()  # 点击合同管理
        time.sleep(1)
        contractul = self.findElement(*self.contractul)
        contractul.find_element_by_id('sidebarTree_80').click()  # 点击年限分析
        time.sleep(1)
        log.logger.info('page[%s] :found the menu [%s] and [%s]' %
                        (sys._getframe().f_code.co_name, self.menuList[0],
                         self.contractul))
コード例 #17
0
class PaymentQuery_page(BasePage):
    '''
        代付结果查询
        '''
    #银农直联系统
    Silverfarmers = (By.XPATH, eleData.readExcel(14, 3))
    #银农直联列表
    SilverFarmersul = (By.XPATH, '//*[@id="sidebarTree_23_ul"]')
    #代付功能
    pay = (By.XPATH, '//*[@id="sidebarTree_32"]')
    #代付功能列表
    payul = (By.XPATH, '//*[@id="sidebarTree_32_ul"]')
    #代付结果查询
    paymentquery = (By.XPATH, eleData.readExcel(231, 3))
    #代付结果查询页面
    parmentquery_page = (By.XPATH, eleData.readExcel(272, 3))

    #点击
    button_list = \
                [(By.XPATH, eleData.readExcel(770,3)),#己方银行0
                 (By.XPATH, eleData.readExcel(771,3)),#己方银行选项1
                 (By.XPATH, eleData.readExcel(772,3)),#查询2
                 (By.XPATH, eleData.readExcel(773, 3)),#详情3
                 (By.XPATH, eleData.readExcel(774, 3)),#打印4
                 (By.XPATH, eleData.readExcel(775, 3)),#详情内查询5
                 (By.XPATH, eleData.readExcel(776, 3)),#详情内打印6
                 (By.XPATH, eleData.readExcel(777, 3))]#详情内取消7
    input_list = \
                [(By.XPATH, eleData.readExcel(778, 3)),#摘要0
                 (By.XPATH, eleData.readExcel(779, 3)),#详情内收款账号1
                 (By.XPATH, eleData.readExcel(780, 3)),#详情内收款人2
                 (By.XPATH, eleData.readExcel(781, 3))]#详情内摘要3
    msg_list = \
                [(By.XPATH, eleData.readExcel(782, 3)),#查询0
                 (By.XPATH, eleData.readExcel(783, 3)),#详情1
                 (By.XPATH, eleData.readExcel(784, 3)),#详情内查询2
                 (By.XPATH, eleData.readExcel(785, 3)),#不存在查询3
                 (By.XPATH, eleData.readExcel(786, 3))]#详情不存在查询4
    #测试数据
    valuelist = [
        '测试', '98032230389911653019', '黄岛一', '6215210200005034',
        '沂南县蒲汪镇大王庄村股份经济合作社', '35170550687795445677'
    ]
    #断言数据
    assertlist = ['显示第 1 到第 0 条记录,总共 0 条记录']

    def inparmentquery(self):
        '''
            进入代付结果查询页面
            :return:
            '''
        leftMenu = self.findElement(*self.menuList[0])  #左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_23_a').click()  #点击银农直联
        time.sleep(1)
        Silverfarmersul = self.findElement(*self.SilverFarmersul)
        Silverfarmersul.find_element_by_xpath(
            '//*[@id="sidebarTree_32"]').click()
        time.sleep(1)
        paymentul = self.findElement(*self.payul)
        paymentul.find_element_by_id('sidebarTree_34').click()  #点击代付结果查询
        time.sleep(1)
        log.logger.info(
            'page[%s]:found the menu [%s]and [%s]' %
            (sys._getframe().f_code.co_name, self.menuList[0], self.payul))
コード例 #18
0
class Menu_Page(BasePage):
    '''
    菜单管理
    '''
    #测试数据
    valueList = ['test1','test2','5']
    reason =time.strftime('%Y-%m-%d:%H-%M-%S')+'测试'
    # 基础功能列表
    functionList = (By.ID, eleData.readExcel(18, 3))
    #菜单管理页面
    menupage = (By.XPATH,eleData.readExcel(190, 3))
    #按钮
    button_list = \
        [(By.ID, eleData.readExcel(191, 3)),#新增按钮0
         (By.ID, eleData.readExcel(192, 3)),#修改按钮1
         (By.ID, eleData.readExcel(193, 3)),#删除按钮2
         (By.ID, eleData.readExcel(194, 3)),#功能开发展开3
         (By.ID, eleData.readExcel(195, 3)),#银农直联展开4
         (By.ID, eleData.readExcel(196, 3)),#合同管理展开5
         (By.ID, eleData.readExcel(197, 3)),#新增提交按钮6
         (By.ID, eleData.readExcel(198, 3)),#新增取消按钮7
         (By.ID, eleData.readExcel(199, 3)),#修改提交按钮8
         (By.ID, eleData.readExcel(200, 3)),#修改取消按钮9
         (By.ID, eleData.readExcel(201, 3)),#删除提交按钮10
         (By.ID, eleData.readExcel(202, 3))]#删除取消按钮11
    #新增菜单
    addmenu_list = \
        [(By.XPATH, eleData.readExcel(203, 3)),#新增菜单窗口0
         (By.XPATH, eleData.readExcel(204, 3)),#菜单名称输入框1
         (By.XPATH, eleData.readExcel(205, 3)),#图标输入框2
         (By.XPATH, eleData.readExcel(206, 3)),#跳转地址输入框3
         (By.XPATH, eleData.readExcel(207, 3)),#排序输入框4
         (By.XPATH, eleData.readExcel(208, 3)),#菜单名称为空提示5
         (By.XPATH, eleData.readExcel(209, 3))]#排序输入错误提示6
    #修改菜单
    updatemenu_list = \
        [(By.XPATH, eleData.readExcel(210, 3)),#修改菜单窗口0
         (By.XPATH, eleData.readExcel(211, 3)),#修改菜单名称输入框1
         (By.XPATH, eleData.readExcel(212, 3)),#修改图标输入框2
         (By.XPATH, eleData.readExcel(213, 3)),#修改跳转地址输入框3
         (By.XPATH, eleData.readExcel(214, 3)),#修改排序输入框4
         (By.XPATH, eleData.readExcel(215, 3)),#修改菜单名称为空提示5
         (By.XPATH, eleData.readExcel(216, 3)),#修改排序输入错误提示6
         (By.XPATH, eleData.readExcel(217, 3))]#修改项7
    #删除菜单
    deletemenu_list = [(By.XPATH, eleData.readExcel(218,3)),#删除项0
                       (By.XPATH, eleData.readExcel(219,3)),#删除窗口1
                       (By.XPATH, '//*[@id="tree_5_a"]')]#选中项2
    #提示信息
    msgbox = (By.XPATH, eleData.readExcel(220,3))#提示信息
    #新增项
    additem = [(By.XPATH,'//*[@id="tree_2_switch"]'),(By.XPATH,'//*[@id="tree_3_span"]'),
               (By.XPATH,'//*[@id="tree_3_switch"]'),(By.XPATH,'//*[@id="tree_4_switch"]')]
    #修改项
    updateitem = (By.ID,'tree_3_switch')
    def inmenuPage(self):
        '''
        进入菜单管理页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])#左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_16').click()#点击基础功能维护
        time.sleep(1)
        menu_list = self.findElement(*self.functionList)
        menu_list.find_element_by_id('sidebarTree_20_a').click()#点击菜单管理
        time.sleep(1)
        log.logger.info('page[%s] :found the menu [%s] and [%s]'%(
            sys._getframe().f_code.co_name,self.menuList[0],self.functionList))

    def cBtn(self,button):
        '''
        点击按钮
        :return:
        '''
        btn = self.findElement(*button)
        try:
            btn.click()
        except Exception:
            log.logger.exception('can not the button ',exc_info=True)
            raise
        else:
            log.logger.info(
                'page[%s]:clicking the button [%s]' % (sys._getframe().f_code.co_name,button))

    def clearValue(self, clear):
        '''
        清空输入项
        :param clear:
        :return:
        '''
        input_clear = self.findElement(*clear)
        try:
            input_clear.clear()
        except Exception:
            log.logger.exception(
                'can not clear input', exc_info=True)
        else:
            log.logger.info(
                'page [%s] :clearing input [%s]' % (sys._getframe().f_code.co_name, clear))
コード例 #19
0
class LoginPage(BasePage):
    """用户名,密码,登录按钮,保存信息,错误提示"""
    userNameEle = (By.NAME, eleData.readExcel(1, 3))
    passWordEle = (By.NAME, eleData.readExcel(2, 3))
    loginBtnEle = (By.XPATH, eleData.readExcel(3, 3))
    selectKitEle = (By.XPATH, eleData.readExcel(4, 3))
    errorMessage = (By.ID, eleData.readExcel(5, 3))
    userEle = (By.XPATH, eleData.readExcel(6, 3))
    userEle2 = (By.XPATH, eleData.readExcel(7, 3))
    signoutEle = (By.XPATH, eleData.readExcel(8, 3))
    quitkEle = (By.XPATH, eleData.readExcel(9, 3))
    deterQuitEle = (By.ID, eleData.readExcel(10, 3))

    # 用户名和密码
    unpwData = \
        [[testLoginData.readExcel(1, 0), testLoginData.readExcel(1, 1)],# 正确的用户名和正确的密码
         [testLoginData.readExcel(2, 0), testLoginData.readExcel(2, 1)],# 错误的用户名和正确的密码
         [testLoginData.readExcel(3, 0), testLoginData.readExcel(3, 1)],# 空的用户名和正确的密码
         [testLoginData.readExcel(4, 0), testLoginData.readExcel(4, 1)],# 错误的用户名和错误的密码
         [testLoginData.readExcel(5, 0), testLoginData.readExcel(5, 1)],# 正确的用户名和空密码
         [testLoginData.readExcel(6, 0), testLoginData.readExcel(6, 1)],# 正确的用户名和错误的密码
         [testLoginData.readExcel(7, 0), testLoginData.readExcel(7, 1)]]# 空用户名和空密码

    #选择套件
    def selectKit(self):
        '''

        :return:
        '''
        #定位下拉框
        Select(self.driver.find_element_by_xpath(
            '//*[@id="accounts_select"]')).select_by_value('00010101')
        # 登录按钮
    def clickLoginBtn(self):
        """

        :return:
        """
        element = self.findElement(*self.loginBtnEle)
        element.click()
        log.logger.info('%s ,logining....!' % sys._getframe().f_code.co_name)

    # 登录失败时提示
    def getFailedText(self):
        """
        :return:
        """
        info = self.findElement(*self.errorMessage).text
        log.logger.info('login failed : %s' % info)
        return info

    # 统一登录函数
    def loginFunc(self, username='******', password='******'):
        """
        :param username:
        :param cipher:
        :return:
        """
        self.inputValue(self.userNameEle, username)
        self.inputValue(self.passWordEle, password)
        time.sleep(3)
        # self.selectKit()
        self.clickLoginBtn()

    # 清空输入框数据
    def clearValue(self, element):

        empty = self.findElement(*element)
        empty.clear()
        log.logger.info('emptying value.......')

    # 退出
    def quit(self):
        time.sleep(3)
        user = self.findElement(*self.userEle)
        user.click()
        ul = self.findElement(*self.userEle2)
        ul.self.findElement(*self.signoutEle).click()
        tc = self.findElement(*self.quitkEle)
        tc.self.findElement(*self.deterQuitEle).click()
        log.logger.info('quit')
コード例 #20
0
class Termwarning_page(BasePage):
    '''
        合同期限预警取消
    '''
    # 合同管理
    contract = (By.XPATH, eleData.readExcel(17, 3))
    # 合同管理列表
    contractul = (By.XPATH, eleData.readExcel(452, 3))
    #合同期限预警取消列表
    accountsul = (By.XPATH, eleData.readExcel(466, 3))
    # 统计
    statistics = (By.XPATH, eleData.readExcel(469, 3))
    # 查询数据
    valuesList = [
        queryData.readExcel(37, 1), (queryData.readExcel(38, 1)),
        queryData.readExcel(39, 1)
    ]
    # 查询条件 合同号,合同名称,客户名称,合同年限
    query_list = [(By.XPATH, eleData.readExcel(668, 3)),
                  (By.XPATH, eleData.readExcel(669, 3)),
                  (By.XPATH, eleData.readExcel(670, 3))]
    #点击  所有地区  查询  第一条数据查看
    button_list = [
        (By.XPATH, eleData.readExcel(666, 3)),
        (By.XPATH, '//*[@id="searchContractWarn"]'),  #查询1
        (By.XPATH, '//*[@id="cancelContractWarn"]'),  # 取消2
        (By.XPATH, '//*[@id="mychart1"]/tbody/tr[1]/td[1]/input'),  #3
        (By.XPATH, '//*[@id="hand_man"]'),  #经手人4
        (By.XPATH, '//*[@id="searchForm"]/div[6]/select'),  #状态5
        (By.XPATH, '//*[@id="mychart1"]/tbody/tr[1]/td[11]/a'),  #历史6
        (By.XPATH, '//*[@id="mychart1"]/tbody/tr[1]/td[12]/a'),  #查看7
        (By.XPATH, '//*[@id="btnOk"]'),  #确定取消预警8
        (By.XPATH, '//*[@id="deleteModal"]/div/div/div[3]/button[2]')
    ]  #不取消预警9
    #经手人
    handledby = [
        (By.XPATH, eleData.readExcel(672, 3)),  #请选择
        (By.XPATH, eleData.readExcel(673, 3)),  #管理员
        (By.XPATH, eleData.readExcel(674, 3)),  #曲盼盼
        (By.XPATH, eleData.readExcel(675, 3)),  #孙宏
        (By.XPATH, eleData.readExcel(676, 3)),  #刘佳
        (By.XPATH, '//*[@id="hand_man"]/option[6]')
    ]
    #状态
    states = [
        (By.XPATH, '//*[@id="searchForm"]/div[6]/select/option[1]'),  #请选择
        (By.XPATH, '//*[@id="searchForm"]/div[6]/select/option[2]'),  #未取消
        (By.XPATH, '//*[@id="searchForm"]/div[6]/select/option[3]')
    ]  #已取消

    #时间控件
    time_list = [
        (By.XPATH, eleData.readExcel(682, 3)),  #签订日期始0
        (By.XPATH, eleData.readExcel(683, 3)),  #签订日期止1
        (By.XPATH, eleData.readExcel(684, 3)),  #前一年2
        (By.XPATH, eleData.readExcel(685, 3)),  #选择日3
        (By.XPATH, eleData.readExcel(686, 3)),  #前一月4
        (By.XPATH, eleData.readExcel(687, 3)),  #选择日5
        (By.XPATH, eleData.readExcel(688, 3))
    ]  #确定6
    #验证
    msg_list = [
        (By.XPATH, eleData.readExcel(689, 3)),  #查询验证0
        (By.XPATH, eleData.readExcel(690, 3)),  #时间查询验证1
        (By.XPATH, eleData.readExcel(691, 3)),  #明细窗口2
        (By.XPATH, '//*[@id="updataDate"]/div/div'),  #历史窗口3
        (By.XPATH, '//*[@id="deleteModal"]/div/div')
    ]  #取消窗口4

    #断言数据
    assertlist = [
        '显示第 1 到第 0 条记录,总共 0 条记录', '显示第 1 到第 4 条记录,总共 4 条记录',
        '显示第 1 到第 5 条记录,总共 5 条记录'
    ]

    def intermwarning(self):
        '''
        进入合同期限预警取消页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_74_a').click()  # 点击合同管理
        time.sleep(1)
        ele = self.findElement(*self.statistics)  # 定位到元素
        self.driver.execute_script('arguments[0].scrollIntoView(false)', ele)
        time.sleep(1)
        contractul = self.findElement(*self.contractul)
        contractul.find_element_by_id('sidebarTree_86_a').click()  # 点击合同预警取消
        time.sleep(2)
        accountsul = self.findElement(*self.contractul)
        accountsul.find_element_by_id('sidebarTree_87').click()  # 合同期限预警取消
        time.sleep(1)
        log.logger.info('page[%s] :found the menu [%s] and [%s]' %
                        (sys._getframe().f_code.co_name, self.menuList[0],
                         self.contractul))

    # 输入查询条件
    def iQueryCondition(self, contractinformation, value):
        """
     :param contractinformation:
     :param value:
     :return:
     """
        contract_information = self.findElement(*contractinformation)
        try:
            contract_information.clear()
            contract_information.send_keys(str(value))
        except Exception:
            log.logger.exception('input value error', exc_info=True)
            raise
        else:
            log.logger.info('[%s] is typing value [%s] ' %
                            (contractinformation, value))

    # 获取条件输入框的内容
    def getInputboxValue(self, *query_list):
        '''

     :param query_list:
     :return:
     '''
        try:
            get_query_text = self.findElement(*query_list)
            text = get_query_text.get_attribute('value')
        except Exception:
            log.logger.exception('get value of element fail', exc_info=True)
            raise
        else:
            log.logger.info('get value [%s] of element [%s] success' %
                            (query_list, text))
            return text

    # 重置功能的重写
    def reset(self):
        """

     :return:
     """
        try:
            self.findElement(*self.query_list[0]).clear()
            self.findElement(*self.query_list[1]).clear()
            self.findElement(*self.query_list[2]).clear()
            self.findElement(*self.query_list[3]).clear()
        except Exception:
            log.logger.exception('reset fail', exc_info=True)
            raise
        else:
            log.logger.info('reset [%s]-[%s]-[%s]-[%s] success' %
                            (self.query_list[0], self.query_list[1],
                             self.query_list[2], self.query_list[3]))

    # 经手人,状态下拉选项
    def contractOption(self, *xpathList):
        """
        :param xpath_list:
        :return:
        """
        try:
            contract_option = self.findElement(*xpathList)
            text = contract_option.text
        except Exception:
            log.logger.exception('get element contract_option item text fail',
                                 exc_info=True)
            raise
        else:
            log.logger.info(
                'get element [%s] contract_option item text [%s] fail' %
                (xpathList, text))
            return text, contract_option
コード例 #21
0
class Recipient_Page(BasePage):
    '''
    短信接收人设置
    '''
    # 银农直联系统
    Silverfarmers = (By.XPATH, eleData.readExcel(14, 3))
    # 银农直联列表
    Silverfarmersul = (By.XPATH, '//*[@id="sidebarTree_23_ul"]')
    # 设置与维护
    set = (By.XPATH, '//*[@id="sidebarTree_33"]')
    # 设置与维护列表
    setul = (By.XPATH, '//*[@id="sidebarTree_33_ul"]')
    # 短信接收人设置
    recipient = (By.XPATH, eleData.readExcel(236, 3))
    # 短信接收人设置页面
    recipientpage = (By.XPATH, eleData.readExcel(378, 3))
    # 查询条件 姓名,手机号
    query_list = [(By.XPATH, eleData.readExcel(430, 3)),
                  (By.XPATH, eleData.readExcel(431, 3))]
    # 查询数据
    valuesList = [queryData.readExcel(21, 1), queryData.readExcel(22, 1)]
    #输入框
    input_list = \
        [(By.XPATH, eleData.readExcel(432, 3)),#姓名(增改)0
         (By.XPATH, eleData.readExcel(433, 3)),#手机号(增改)1
         (By.XPATH, eleData.readExcel(434, 3))]#备注(增改)2
    #点击
    button_list = \
        [(By.XPATH, eleData.readExcel(435, 3)),#查询0
         (By.XPATH, eleData.readExcel(436, 3)),#新增1
         (By.XPATH, eleData.readExcel(437, 3)),#修改2
         (By.XPATH, eleData.readExcel(438, 3)),#删除3
         (By.XPATH, eleData.readExcel(439, 3)),#提交(增改)4
         (By.XPATH, eleData.readExcel(440, 3)),#取消(增改)5
         (By.XPATH, eleData.readExcel(441, 3)),#确定(删除)6
         (By.XPATH, eleData.readExcel(442, 3))]#取消(删除)7
    #选择框
    checkbox = [
        (By.XPATH, eleData.readExcel(443, 3)),  #选择一项0
        (By.XPATH, eleData.readExcel(444, 3))
    ]  #全选1
    #验证
    msg_list = \
         [(By.XPATH, eleData.readExcel(445, 3)),#右上角验证0
          (By.XPATH, eleData.readExcel(446, 3)),#新增窗口验证1
          (By.XPATH, eleData.readExcel(447, 3)),#姓名为空提示(增改)2
          (By.XPATH, eleData.readExcel(448, 3)),#手机号为空提示(增改)3
          (By.XPATH, eleData.readExcel(449, 3)),#修改窗口验证4
          (By.XPATH, eleData.readExcel(450, 3)),#删除窗口验证5
          (By.XPATH, eleData.readExcel(451, 3))]#查询验证6
    # 测试数据
    valueList = ['15864901222', '18560703375', '13764901222']
    reason = time.strftime('%Y-%m-%d:%H-%M-%S') + '测试'

    def inrecipientpage(self):
        '''
        进入对方银行设置页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_23_a').click()  # 点击银农直联系统
        time.sleep(1)
        Silverfarmersul = self.findElement(*self.Silverfarmersul)
        Silverfarmersul.find_element_by_xpath(
            '//*[@id="sidebarTree_33"]').click()  # 点击设置与维护
        time.sleep(1)
        setul = self.findElement(*self.setul)
        setul.find_element_by_id('sidebarTree_37_a').click()  # 点击短信接收人设置
        time.sleep(1)
        log.logger.info(
            'page[%s] :found the menu [%s] and [%s]' %
            (sys._getframe().f_code.co_name, self.menuList[0], self.setul))

    # 输入查询条件
    def iQueryCondition(self, namephone, value):
        """
        :param namephone:
        :param value:
        :return:
        """
        name_phone = self.findElement(*namephone)
        try:
            name_phone.clear()
            name_phone.send_keys(str(value))
        except Exception:
            log.logger.exception('input value error', exc_info=True)
            raise
        else:
            log.logger.info('[%s] is typing value [%s] ' % (namephone, value))

    # 获取条件输入框的内容
    def getInputboxValue(self, *query_list):
        '''

        :param query_list:
        :return:
        '''
        try:
            get_query_text = self.findElement(*query_list)
            text = get_query_text.get_attribute('value')
        except Exception:
            log.logger.exception('get value of element fail', exc_info=True)
            raise
        else:
            log.logger.info('get value [%s] of element [%s] success' %
                            (query_list, text))
            return text

    # 重置功能的重写
    def reset(self):
        """

        :return:
        """
        try:
            self.findElement(*self.query_list[0]).clear()
            self.findElement(*self.query_list[1]).clear()
        except Exception:
            log.logger.exception('reset fail', exc_info=True)
            raise
        else:
            log.logger.info('reset [%s]-[%s] success' %
                            (self.query_list[0], self.query_list[1]))
コード例 #22
0
class Receipt_Page(BasePage):
    '''
        合同收款
    '''
    # 合同管理
    contract = (By.XPATH, eleData.readExcel(17, 3))
    # 合同管理列表
    contractul = (By.XPATH, eleData.readExcel(452, 3))
    #查询数据
    valuesList = [
        queryData.readExcel(27, 1),
        queryData.readExcel(28, 1),
        queryData.readExcel(29, 1),
        queryData.readExcel(30, 1)
    ]
    # 查询条件 合同号,合同名称,客户名称,经办人
    query_list = [(By.XPATH, eleData.readExcel(585, 3)),
                  (By.XPATH, eleData.readExcel(586, 3)),
                  (By.XPATH, eleData.readExcel(587, 3)),
                  (By.XPATH, eleData.readExcel(588, 3))]
    #时间控件
    time_list = [
        (By.XPATH, eleData.readExcel(589, 3)),  #签订时间始0
        (By.XPATH, eleData.readExcel(590, 3)),  #前一年1
        (By.XPATH, eleData.readExcel(591, 3)),  #选择日2
        (By.XPATH, eleData.readExcel(592, 3)),  #签订时间止3
        (By.XPATH, eleData.readExcel(593, 3)),  #前一月4
        (By.XPATH, eleData.readExcel(594, 3)),  #选择日5
        (By.XPATH, eleData.readExcel(595, 3))
    ]  #确定6

    #点击  查询   查看明细
    button_list = [(By.XPATH, eleData.readExcel(596, 3)),
                   (By.XPATH, eleData.readExcel(597, 3))]
    #验证  右上角验证   条件查询验证   时间查询验证,明细窗口
    msg_list = [(By.XPATH, eleData.readExcel(598, 3)),
                (By.XPATH, eleData.readExcel(599, 3)),
                (By.XPATH, eleData.readExcel(600, 3)),
                (By.XPATH, eleData.readExcel(601, 3))]
    #选框  全选  选择一项
    check_box = [(By.XPATH, eleData.readExcel(602, 3)),
                 (By.XPATH, eleData.readExcel(603, 3))]
    # 断言数据
    assertlist = ['显示第 1 到第 0 条记录,总共 0 条记录', '请选择一项查看']

    def inreceiptpage(self):
        '''
     进入合同收款页面
     :return:
     '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_74_a').click()  # 点击合同管理
        time.sleep(1)
        contractul = self.findElement(*self.contractul)
        contractul.find_element_by_id('sidebarTree_77').click()  # 点击合同收款
        time.sleep(1)
        log.logger.info('page[%s] :found the menu [%s] and [%s]' %
                        (sys._getframe().f_code.co_name, self.menuList[0],
                         self.contractul))

    # 输入查询条件
    def iQueryCondition(self, contractinformation, value):
        """
     :param contractinformation:
     :param value:
     :return:
     """
        contract_information = self.findElement(*contractinformation)
        try:
            contract_information.clear()
            contract_information.send_keys(str(value))
        except Exception:
            log.logger.exception('input value error', exc_info=True)
            raise
        else:
            log.logger.info('[%s] is typing value [%s] ' %
                            (contractinformation, value))

    # 获取条件输入框的内容
    def getInputboxValue(self, *query_list):
        '''

     :param query_list:
     :return:
     '''
        try:
            get_query_text = self.findElement(*query_list)
            text = get_query_text.get_attribute('value')
        except Exception:
            log.logger.exception('get value of element fail', exc_info=True)
            raise
        else:
            log.logger.info('get value [%s] of element [%s] success' %
                            (query_list, text))
            return text

    # 重置功能的重写
    def reset(self):
        """

     :return:
     """
        try:
            self.findElement(*self.query_list[0]).clear()
            self.findElement(*self.query_list[1]).clear()
            self.findElement(*self.query_list[2]).clear()
            self.findElement(*self.query_list[3]).clear()
        except Exception:
            log.logger.exception('reset fail', exc_info=True)
            raise
        else:
            log.logger.info('reset [%s]-[%s]-[%s]-[%s] success' %
                            (self.query_list[0], self.query_list[1],
                             self.query_list[2], self.query_list[3]))
コード例 #23
0
class OtherBank_Page(BasePage):
    '''
    对方银行设置
    '''
    # 银农直联系统
    Silverfarmers = (By.XPATH, eleData.readExcel(14, 3))
    # 银农直联列表
    Silverfarmersul = (By.XPATH, '//*[@id="sidebarTree_23_ul"]')
    # 设置与维护
    set = (By.XPATH, '//*[@id="sidebarTree_33"]')
    # 设置与维护列表
    setul = (By.XPATH, '//*[@id="sidebarTree_36_ul"]')
    # 对方银行
    otherBank = (By.XPATH, eleData.readExcel(234, 3))
    # 对方银行设置页面
    otherBankpage = (By.XPATH, eleData.readExcel(378, 3))
    # 查询条件 开户机构,户名,账号,银行名称
    query_list = [(By.XPATH, eleData.readExcel(379, 3)),
                  (By.XPATH, eleData.readExcel(380, 3)),
                  (By.XPATH, eleData.readExcel(381, 3)),
                  (By.XPATH, eleData.readExcel(382, 3))]
    # 查询数据
    valuesList = [
        queryData.readExcel(17, 1),
        queryData.readExcel(18, 1),
        queryData.readExcel(19, 1),
        queryData.readExcel(20, 1)
    ]
    #输入框
    input_list = \
        [(By.XPATH, '//*[@id="defaultForm"]/div[1]/div/input'),#银行名称(新增,修改)0
         (By.XPATH, '//*[@id="defaultForm"]/div[2]/div/input'),#户名(新增,修改)1
         (By.XPATH, '//*[@id="defaultForm"]/div[3]/div/input'),#开户机构(新增,修改)2
         (By.XPATH, '//*[@id="defaultForm"]/div[4]/div/input'),#账户号码(新增,修改)3
         (By.XPATH, '//*[@id="transaction_type_select"]'),#联行号(新增,修改)4
         (By.XPATH, eleData.readExcel(423, 3)),#短信接收人(新增)5
         (By.XPATH, eleData.readExcel(424, 3)),#短信接收人手机号(新增)6
         (By.XPATH, eleData.readExcel(425, 3)),#联行号(新增,修改)7
         (By.XPATH, eleData.readExcel(391, 3)),#短信接收人(修改)8
         (By.XPATH, eleData.readExcel(392, 3))]#短信接收人手机号(修改)9
    #点击元素
    button_list = \
         [(By.ID, eleData.readExcel(393, 3)),#查询0
          (By.ID, eleData.readExcel(394, 3)),#新增1
          (By.ID, eleData.readExcel(395, 3)),#修改2
          (By.ID, eleData.readExcel(396, 3)),#删除3
          (By.ID, eleData.readExcel(397, 3)),#查询余额4
          (By.XPATH, eleData.readExcel(398, 3)),#是农商行(修改)5
          (By.XPATH, eleData.readExcel(399, 3)),#否农商行(修改)6
          (By.ID, eleData.readExcel(400, 3)),#提交(新增)7
          (By.ID, eleData.readExcel(401, 3)),#取消(新增)8
          (By.ID, eleData.readExcel(402, 3)),#提交(修改)9
          (By.ID, eleData.readExcel(403, 3)),#取消(修改)10
          (By.XPATH, eleData.readExcel(404, 3)),#确定(删除)11
          (By.XPATH, eleData.readExcel(405, 3))]#取消(删除)12

    # 是否农商行(新增)
    whether = [(By.XPATH, eleData.readExcel(428, 3)),
               (By.XPATH, eleData.readExcel(429, 3))]
    #选框
    check_box = \
         [(By.XPATH, eleData.readExcel(407, 3)),#修改项0(作废)
          (By.XPATH, eleData.readExcel(408, 3)),#删除项1
          (By.XPATH, eleData.readExcel(409, 3))]#全选2
    #检验
    msg_list = \
         [(By.XPATH, eleData.readExcel(410, 3)),  #右上角验证0
          (By.XPATH, eleData.readExcel(411, 3)),  #新增窗口验证1
          (By.XPATH, eleData.readExcel(412, 3)),  #银行名称为空提示(新增,修改)2
          (By.XPATH, '//*[@id="defaultForm"]/div[2]/div/small'),  #户名为空提示(新增,修改)3
          (By.XPATH, '//*[@id="defaultForm"]/div[3]/div/small'),  #开户机构为空验证(新增,修改)4
          (By.XPATH, '//*[@id="defaultForm"]/div[4]/div/small[1]'),  #账号为空验证(新增)5
          (By.XPATH, '//*[@id="defaultForm"]/div[4]/div/small[2]'),  #账号不规则(新增)6
          (By.XPATH, '//*[@id="defaultForm"]/div[5]/div/small'),  #联行号不规则验证(新增)7
          (By.XPATH, eleData.readExcel(418, 3)),  #短信接收人为空验证(修改)8
          (By.XPATH, eleData.readExcel(419, 3)),  #短信接收人手机号为空验证(修改)9
          (By.XPATH, eleData.readExcel(420, 3)),  #修改窗口验证10
          (By.XPATH, eleData.readExcel(421, 3)),  #删除窗口验证11
          (By.XPATH, eleData.readExcel(422, 3)),  #查询验证12
          (By.XPATH, '/html/body/div[5]'),  # 删除提示13
          (By.XPATH, '/html/body/div[6]'), # 重复验证提示14
          (By.XPATH, '//*[@id="mychart4"]/tbody')] #15
    # 测试数据
    valueList = [
        '981637672804', '15864901222', '测试银行', '无相关查询数据', '不能为空', '请输入有效的数字',
        '新增成功', '测试户名', '该银行账户已存在', '请选中一项内容', '请选中一项内容进行操作', '修改成功', '删除成功'
    ]
    reason = time.strftime('%Y-%m-%d:%H-%M-%S') + '测试'

    def InotherBankpage(self):
        '''
        进入对方银行设置页面
        :return:
        '''
        leftMenu = self.findElement(*self.menuList[0])  # 左侧菜单栏
        leftMenu.find_element_by_id('sidebarTree_23_a').click()  # 点击银农直联系统
        time.sleep(1)
        Silverfarmersul = self.findElement(*self.Silverfarmersul)
        Silverfarmersul.find_element_by_xpath(
            '//*[@id="sidebarTree_36"]').click()  # 点击设置与维护
        time.sleep(1)
        payul = self.findElement(*self.setul)
        payul.find_element_by_id('sidebarTree_38').click()  # 点击对方银行设置
        time.sleep(1)
        log.logger.info(
            'page[%s] :found the menu [%s] and [%s]' %
            (sys._getframe().f_code.co_name, self.menuList[0], self.setul))

    # 输入查询条件
    def iQueryCondition(self, Accountnamebank, value):
        """
        :param Accountnamebank:
        :param value:
        :return:
        """
        Account_name_bank = self.findElement(*Accountnamebank)
        try:
            Account_name_bank.clear()
            Account_name_bank.send_keys(str(value))
        except Exception:
            log.logger.exception('input value error', exc_info=True)
            raise
        else:
            log.logger.info('[%s] is typing value [%s] ' %
                            (Accountnamebank, value))

    # 获取条件输入框的内容
    def getInputboxValue(self, *query_list):
        '''

        :param query_list:
        :return:
        '''
        try:
            get_query_text = self.findElement(*query_list)
            text = get_query_text.get_attribute('value')
        except Exception:
            log.logger.exception('get value of element fail', exc_info=True)
            raise
        else:
            log.logger.info('get value [%s] of element [%s] success' %
                            (query_list, text))
            return text

    # 重置功能的重写
    def reset(self):
        """

        :return:
        """
        try:
            self.findElement(*self.query_list[0]).clear()
            self.findElement(*self.query_list[1]).clear()
            self.findElement(*self.query_list[2]).clear()
            self.findElement(*self.query_list[3]).clear()
        except Exception:
            log.logger.exception('reset fail', exc_info=True)
            raise
        else:
            log.logger.info('reset [%s]-[%s]-[%s]-[%s] success' %
                            (self.query_list[0], self.query_list[1],
                             self.query_list[2], self.query_list[3]))