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() # 创建一个参数化对象
  • 相关阅读:
    软工实践1816-第四次作业
    软工实践1816-第三次作业
    软工实践1816-第二次作业
    Alpha 冲刺 (3/10)
    Alpha 冲刺 (2/10)
    Alpha 冲刺 (1/10)
    福大软工 · 第七次作业
    福大软工 · 第八次作业(课堂实战)- 项目UML设计(团队)
    福大软工1816 · 第六次作业
    福大软工1816 · 第五次作业
  • 原文地址:https://www.cnblogs.com/xiaogongjin/p/11372175.html
Copyright © 2011-2022 走看看