zoukankan      html  css  js  c++  java
  • 如何使用re模块进行测试用例的参数化

    import re
    import os
    from scripts.handle_mysql import HandleMysql
    from scripts.handle_config import HandleConfig
    from scripts.constants import CONFIGS_DIR
    
    
    class HandleParam:
        '''
        定义一个参数化类
        '''
    
        not_exist_mobile = r'${is_not_exist_mobile}'
        admin_user_mobile = r'${admin_user_mobile}'
        user_id = r'${user_id}'
        
        @classmethod
        def param_not_exist_phone_num(cls, data):
            '''
            参数化未注册手机号
            :param data: 参数化data
            :return:
            '''
            if re.search(r'${w+}', data) is not None:
                do_mysql = HandleMysql()
                data = re.sub(cls.not_exist_mobile, str(do_mysql.is_not_exist_mobile()), data)
                do_mysql.close()
                return data
            else:
                return data
    
        @classmethod
        def param_admin_user_phone_num(cls, data):
            '''
            参数化管理员手机号
            :param data: 参数化data
            :return:
            '''
            if re.search(r'${w+}', data) is not None:
                user_conf = HandleConfig(os.path.join(CONFIGS_DIR, 'three_user_info.ini'))
                data = re.sub(cls.admin_user_mobile, str(user_conf.get_int("manage_user", "mobilephone")), data)
                return data
            else:
                return data
    
        @classmethod
        def param_user_id(cls, data):
            '''
            参数化用户id
            :param data: 参数化data
            :return:
            '''
            if re.search(r'${w+}', data) is not None:
                user_id = getattr(do_re, 'user_id')
                data = re.sub(cls.user_id, str(user_id), data)
                return data
            else:
                return data
    
        @classmethod
        def parametrization(cls, data):
            '''
            批量参数化方法
            :param data: 参数化data
            :return:
            '''
            data = cls.param_not_exist_phone_num(data)
            data = cls.param_exist_phone_num(data)
            data = cls.param_user_id(data)
            return data
    
      do_re
    = HandleParam() # 创建一个参数化对象
  • 相关阅读:
    Kotlin函数之fun?function?
    Kotlin什么是top-level?
    Kotlin基础类型
    Hello,Kotlin!
    delphi 窗体自适应屏幕分辨率
    关于 Delphi 中流的使用(7) 压缩与解压缩(TCompressionStream、TDecompressionStream)
    delphi视频聊天
    两个DataGridEHToExcel
    用Delphi实现网络视频编程
    delphi Base64编码/解码及数据压缩/解压知识
  • 原文地址:https://www.cnblogs.com/xiaogongjin/p/11372175.html
Copyright © 2011-2022 走看看