test_data对象使用
重要提醒
test_data是芒果测试平台提供的全局变量对象,包含了丰富的随机数据生成方法和工具函数,可用于测试用例中生成各种类型的测试数据。
方法分类
- CodingTool
- RandomCharacterInfoData
- CacheTool
- JsonTool
- DataProcessor
- EncryptionTool
- RandomNumberData
- ObtainRandomData
- RandomStringData
- RandomTimeData
CodingTool
| 方法名 | 描述 | 签名 |
|---|---|---|
| base64_encode | 编码字符串 | (data: str) -> str |
| response_decoding | 解码字符串 | (data) -> str |
RandomCharacterInfoData
| 方法名 | 描述 | 签名 |
|---|---|---|
| character_address | 带邮政编码的地址 | () |
| character_bank_card | 银行卡 | () |
| character_company | 获取公司名称 | () |
| character_email | 生成邮箱 | () -> str |
| character_female_name | 女生姓名 | () -> str |
| character_id_number | 随机生成身份证号码 | () -> str |
| character_job | 获取职称 | () |
| character_male_name | 男生姓名 | () -> str |
| character_phone | 随机生成手机号码 | () -> str |
| character_profile | 获取带公司的人物信息 | () |
| character_simple_profile | 获取简单的人物信息 | () |
| str_company_email | 生成随机公司邮箱 | () |
| str_company_job | 生成随机公司职位 | () |
| str_intl_phone | 生成随机国际电话号码字符串 | () |
| str_job | 生成随机职业 | () |
| str_license_plate | 生成随机车牌号 | () |
| str_postcode | 生成随机邮政编码 | () |
| str_university | 生成随机大学名 | () |
CacheTool
| 方法名 | 描述 | 签名 |
|---|---|---|
| clear_cache | 清理所有缓存 | (self) -> None |
| delete_cache | 删除一个缓存 | (self, key: str) -> None |
| get_all | 获取全部的缓存数据 | (self) -> dict |
| get_cache | 得到缓存key的value | (self, key: str) -> <built-in function any> |
| has_cache | 判断缓存是否存在 | (self, key: str) -> bool |
| set_cache | 设置一个内容到缓存 | (self, key: str, value: <built-in function any>) -> None |
| set_dict_cache | 设置dict缓存 | (self, data: dict) -> None |
| set_list_cache | 设置list缓存 | (self, key: list, value: list) -> None |
| set_sql_cache | 根据sql进行缓存数据 | (self, key: str, value: dict) -> None |
JsonTool
| 方法名 | 描述 | 签名 |
|---|---|---|
| dump | 将Python对象转换成json字符串 | (obj, indent=None) -> str |
| dumps | 将Python列表转换成json数组字符串 | `(obj_list: list |
| flatten | 将嵌套的json对象展开成扁平的字典 | (json_obj, sep='_', prefix='') |
| get_json_path_value | 在dict中根绝jsonpath取出值 | (obj: dict, expr, index=0) |
| load | 将json字符串转换成Python对象 | `(json_str) -> dict |
| loads | 将json数组字符串转换成Python列表 | `(json_list_str: str) -> list |
DataProcessor
| 方法名 | 描述 | 签名 |
|---|---|---|
| identify_parentheses | (value: str) | |
| is_extract | (string: str) -> bool | |
| remove_parentheses | (data: str) -> str | |
| replace | `(self, data: list |
EncryptionTool
| 方法名 | 描述 | 签名 |
|---|---|---|
| md5_16_large | MD5_16位大写加密 | (string) -> str |
| md5_16_small | MD5_16位小写加密 | (string) -> str |
| md5_32_large | MD5_32位大写加密 | (string) -> str |
| md5_32_small | MD5_32位小写加密 | (string) -> str |
RandomNumberData
| 方法名 | 描述 | 签名 |
|---|---|---|
| number_nan | NaN(float('nan')) | () |
| number_negative_infinity | 负无穷(float('-inf')) | () |
| number_positive_infinity | 正无穷(float('inf')) | () |
| number_random_0_5000 | 0-5000的随机数 | () -> int |
| number_random_0_9 | 0-9的随机数 | () -> int |
| number_random_10_99 | 10-99的随机数 | () -> int |
| number_random_100_999 | 100-999的随机数 | () -> int |
| number_random_1000_two_float | 1000以内的随机两位小数 | () |
| number_random_bin_str | 随机二进制字符串, 参数:digits(默认8) | (digits=8) |
| number_random_code4 | 4位数字验证码 | () |
| number_random_code6 | 6位数字验证码 | () |
| number_random_decimal | 随机小数(指定小数位数), 参数:digits(默认3) | (digits=3) |
| number_random_even | 指定范围内的随机偶数,参数:left(默认0), right(默认1000) | (left=0, right=1000) |
| number_random_exponential | 随机指数型浮点数(如1.23e+10) | () |
| number_random_float | 小数 | () |
| number_random_fraction_str | 随机分数字符串(如'3/7') | () |
| number_random_hex_str | 随机十六进制字符串, 参数:digits(默认6) | (digits=6) |
| number_random_mobile | 随机手机号码(数字型,11位) | () |
| number_random_money | 随机金额(两位小数), 参数:left(默认0.01), right(默认10000.00) | (left=0.01, right=10000.0) |
| number_random_negative_even | 负数范围内的随机偶数, 参数:left(默认-1000), right(默认-2) | (left=-1000, right=-2) |
| number_random_negative_float | 指定范围内的随机负浮点数, 参数:left(默认1000.0), right(默认0.01) | (left=-1000.0, right=-0.01) |
| number_random_negative_odd | 负数范围内的随机奇数, 参数:left(默认-999), right(默认-1) | (left=-999, right=-1) |
| number_random_oct_str | 随机八进制字符串, 参数:digits(默认6) | (digits=6) |
| number_random_odd | 指定范围内的随机奇数,参数:left(默认0), right(默认1000) | (left=0, right=1000) |
| number_random_percent | 随机百分数(0-100,带两位小数) | () |
| number_random_positive_float | 指定范围内的随机正浮点数,参数:left(默认0.0), right(默认1000.0) | (left=0.0, right=1000.0) |
| number_random_prime | 指定范围内的随机质数, 参数:left(默认2), right(默认100) | (left=2, right=100) |
| number_random_roman | 随机罗马数字字符串(1-3999) | () |
| number_random_scientific | 随机科学计数法数字(字符串) | () |
| number_random_two_float | 随机两位小数 | () |
| number_time_5 | 获取基于当前时间戳的随机五位数 | () |
| randint | 随机的范围数,参数:left(默认-1),right(默认1000) | (left=1, right=1000) |
ObtainRandomData
| 方法名 | 描述 | 签名 |
|---|---|---|
| regular | (self, func: str) |
RandomStringData
| 方法名 | 描述 | 签名 |
|---|---|---|
| str_base64 | 生成随机Base64字符串,参数:length(默认10) | (length=10) |
| str_card_number_split | 生成带空格分隔的银行卡号字符串 | () |
| str_city | 获取城市 | () |
| str_cn_address | 生成随机中文地址 | () |
| str_color_name | 生成随机颜色名 | () |
| str_country | 获取国家 | () |
| str_date | 生成随机日期字符串(YYYY-MM-DD) | () |
| str_datetime | 生成随机日期时间字符串(YYYY-MM-DD HH:MM:SS) | () |
| str_domain | 生成随机域名 | () |
| str_emoji | 生成随机Emoji表情 | () |
| str_en_paragraph | 生成随机英文段落 | () |
| str_en_sentence | 生成随机英文句子 | () |
| str_file_path | 生成随机文件路径 | () |
| str_filename | 生成随机文件名,可指定扩展名,参数:(默认txt) | (extension='txt') |
| str_hex_color | 生成随机HEX颜色 | () |
| str_html_escape | 生成随机HTML转义字符串 | () |
| str_image_url | 生成随机图片URL | () |
| str_ipv4 | 生成随机IPv4地址 | () |
| str_ipv6 | 生成随机IPv6地址 | () |
| str_isbn | 生成随机ISBN号字符串 | () |
| str_json | 生成随机JSON字符串 | () |
| str_json_nested | 生成随机嵌套JSON字符串 | () |
| str_latlng | 生成随机经纬度字符串 | () |
| str_lowercase | 生成指定长度的纯小写字母字符串,参数:length(默认10) | (length=10) |
| str_mac_address | 生成随机MAC地址 | () |
| str_markdown | 生成随机Markdown文本 | () |
| str_province | 获取省份 | () |
| str_pystr | 生成英文的字符串 | () |
| str_qq | 生成随机QQ号字符串 | () |
| str_random_string | 随机字母数字,参数:length(默认10) | (length=10) |
| str_short_url | 生成随机短链字符串 | () |
| str_special_chars | 生成指定长度的特殊字符字符串,参数:length(默认10) | (length=10) |
| str_special_mix | 生成随机特殊符号混合字符串,参数:length(默认3) | (length=10) |
| str_sql | 生成随机SQL语句字符串 | () |
| str_text | 生成一篇文章 | () |
| str_time | 生成随机时间字符串(HH:MM:SS) | () |
| str_uppercase | 生成指定长度的纯大写字母字符串,参数:length(默认10) | (length=10) |
| str_url | 生成随机URL | () |
| str_url_encoded | 生成随机URL编码字符串,参数:length(默认3) | (length=10) |
| str_url_params | 生成随机URL参数字符串,参数:count(默认3) | (count=3) |
| str_url_path | 生成随机URL路径 | () |
| str_uuid | 随机的UUID,长度36 | () |
| str_uuid_no_dash | 生成无短横线的UUID字符串 | () |
| str_vin | 生成随机车架号(VIN)字符串 | () |
| str_wechat_id | 生成随机微信号字符串 | () |
| str_whitespace | 生成大段空白/制表符/换行符字符串,参数:length(默认3) | (length=10) |
| str_with_emoji | 生成带emoji的随机文本字符串 | () |
| str_word | 生成词语 | () |
RandomTimeData
| 方法名 | 描述 | 签名 |
|---|---|---|
| time_after_month | 获取30天后的12点整时间 | () |
| time_after_week | 获取一周后12点整的时间 | () |
| time_cron_time | 秒级cron表达式,参数:time_parts | (time_parts) -> str |
| time_future_date | 未来的随机年月日 | () |
| time_future_datetime | 未来的随机年月日时分秒 | () |
| time_next_minute | 几分钟后的年月日时分秒 参数:分钟(默认0) | (minute=0) -> str |
| time_next_minute_cron | 按周重复的cron表达式,参数:minutes(默认1) | (minutes=1) |
| time_now_day | 获取当前日期,参数:days(默认0),可为正数(未来时间)或负数(过去时间) | (days: int = 0) -> str |
| time_now_hms | 当前时分秒,参数:minutes(默认0),可为正数(未来时间)或负数(过去时间) | (minutes: int = 0) -> str |
| time_now_hour | 获取当前小时,参数:hours(默认0),可为正数(未来时间)或负数(过去时间) | (hours: int = 0) -> str |
| time_now_int | 获取当前时间戳整形 | () -> int |
| time_now_minute | 获取当前分钟,参数:minutes(默认0),可为正数(未来时间)或负数(过去时间) | (minutes: int = 0) -> str |
| time_now_month | 获取当前月份,参数:days(默认0),可为正数(未来时间)或负数(过去时间) | (days: int = 0) -> str |
| time_now_second | 获取当前秒,参数:seconds(默认0),可为正数(未来时间)或负数(过去时间) | (seconds: int = 0) -> str |
| time_now_year | 获取当前年份,参数:days(默认0),可为正数(未来时间)或负数(过去时间) | (days: int = 0) -> str |
| time_now_ymd | 当前年月日,参数:days(默认0) | (days=0) |
| time_now_ymd_h | 当前年月日时,参数:hours(默认0),可为正数(未来时间)或负数(过去时间) | (hours: int = 0) -> str |
| time_now_ymd_hm | 当前年月日时分,参数:minutes(默认0),可为正数(未来时间)或负数(过去时间) | (minutes: int = 0) -> str |
| time_now_ymdhms | 当前年月日时分秒,参数:minute(默认0) | (minute=0) -> str |
| time_random_12h | 随机12小时制时间字符串(hh:MM:SS AM/PM) | () |
| time_random_cron | 随机cron表达式(分 时 日 月 周) | () |
| time_random_date | 获取随机日期 | () |
| time_random_day_str | 随机日字符串(01-31) | () |
| time_random_future_ymd | 未来随机年月日字符串 | () |
| time_random_future_ymdhms | 未来随机年月日时分秒字符串 | () |
| time_random_hm_str | 随机时分字符串(HH:MM) | () |
| time_random_hms_str | 随机时分秒字符串(HH:MM:SS) | () |
| time_random_hour_str | 随机小时字符串(00-23) | () |
| time_random_iso8601 | 随机ISO8601时间字符串 | () |
| time_random_minute_str | 随机分钟字符串(00-59) | () |
| time_random_month | 获取随机月份 | () |
| time_random_month_str | 随机月份字符串(01-12) | () |
| time_random_past_ymd | 过去随机年月日字符串 | () |
| time_random_past_ymdhms | 过去随机年月日时分秒字符串 | () |
| time_random_quarter | 随机季度(Q1-Q4) | () |
| time_random_rfc1036 | 随机RFC1036时间字符串 | () |
| time_random_rfc1123 | 随机RFC1123时间字符串 | () |
| time_random_rfc2822 | 随机RFC2822时间字符串 | () |
| time_random_rfc3339 | 随机RFC3339时间字符串 | () |
| time_random_rfc3339nano | 随机RFC3339纳秒时间字符串 | () |
| time_random_rfc822 | 随机RFC822时间字符串 | () |
| time_random_rfc850 | 随机RFC850时间字符串 | () |
| time_random_second_str | 随机秒字符串(00-59) | () |
| time_random_time_range_str | 随机时间区间字符串(如'2023-01-01~2023-01-31') | () |
| time_random_timestamp_ms | 随机时间戳(毫秒) | () |
| time_random_timestamp_s | 随机时间戳(秒) | () |
| time_random_timestamp_us | 随机时间戳(微秒) | () |
| time_random_utc_offset | 随机UTC偏移字符串(如+08:00) | () |
| time_random_utcnow | 当前UTC时间字符串(YYYY-MM-DD HH:MM:SSZ) | () |
| time_random_weekday | 随机周几(中文) | () |
| time_random_weekday_num | 随机周几(数字1-7) | () |
| time_random_year | 获取随机年份 | () |
| time_random_year_str | 随机年份字符串 | () |
| time_random_ym | 随机年月字符串(YYYY-MM) | () |
| time_random_ymd_str | 随机年月日字符串(YYYY-MM-DD) | () |
| time_random_ymdhm_str | 随机年月日时分字符串(YYYY-MM-DD HH:MM) | () |
| time_random_ymdhms_str | 随机年月日时分秒字符串(YYYY-MM-DD HH:MM:SS) | () |
| time_stamp | 几分钟后的时间戳, 参数:minute(默认0) | (minute=0) -> int |
| time_today_date_00 | 获取今日00:00:00时间 | () |
| time_today_date_59 | 获取今日23:59:59时间 | () |
