news 2026/4/23 11:31:43

常用的生成测试数据的python脚本,用了都说好

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
常用的生成测试数据的python脚本,用了都说好

生成接口自动化测试数据时,Python提供了丰富的库和工具来帮助我们创建各种类型的数据, 以下是常用的Python脚本示例,用于生成不同类型的测试数据。

一 生成随机字符串

import random import string def generate_random_string(length=10): return ''.join(random.choices(string.ascii_letters + string.digits, k=length)) print(generate_random_string(15))

二 生成随机整数

import random def generate_random_integer(start=1, end=100): return random.randint(start, end) print(generate_random_integer(1, 1000))

三 生成随机日期

from datetime import datetime, timedelta import random def generate_random_date(start_date=None, end_date=None): if start_date is None: start_date = datetime(2000, 1, 1) if end_date is None: end_date = datetime.now() delta = end_date - start_date int_delta = (delta.days * 24 * 60 * 60) + delta.seconds random_second = random.randrange(int_delta) return start_date + timedelta(seconds=random_second) print(generate_random_date().strftime('%Y-%m-%d'))

四 生成随机时间

from datetime import time, timedelta import random def generate_random_time(): hours = random.randint(0, 23) minutes = random.randint(0, 59) seconds = random.randint(0, 59) return time(hours, minutes, seconds) print(generate_random_time().strftime('%H:%M:%S'))

五 生成随机电子邮件地址

import random import string def generate_random_email(): local_part = ''.join(random.choices(string.ascii_letters + string.digits + '_', k=8)) domain = ''.join(random.choices(string.ascii_letters, k=4)) + '.com' return f"{local_part}@{domain}" print(generate_random_email())

六 生成随机IP地址

import random def generate_random_ip(): return '.'.join(map(str, (random.randint(0, 255) for _ in range(4)))) print(generate_random_ip())

七 生成随机UUID

import uuid def generate_random_uuid(): return str(uuid.uuid4()) print(generate_random_uuid())

八 生成随机地址(城市、州、国家)

import random from faker import Faker fake = Faker() def generate_random_address(): return { 'city': fake.city(), 'state': fake.state(), 'country': fake.country() } print(generate_random_address())

九 生成随机电话号码

from faker import Faker fake = Faker() def generate_random_phone_number(): return fake.phone_number() print(generate_random_phone_number())

十 生成随机文本段落

from faker import Faker fake = Faker() def generate_random_text(nb_sentences=3): return fake.text(nb_sentences=nb_sentences) print(generate_random_text(5))

十一 生成随机URL

import random from faker import Faker fake = Faker() def generate_random_url(): return fake.url() print(generate_random_url())

十二 从CSV文件读取测试数据

import csv def read_test_data_from_csv(file_path): test_data = [] with open(file_path, mode='r') as file: reader = csv.DictReader(file) for row in reader: test_data.append(row) return test_data data = read_test_data_from_csv('test_data.csv') # 读取CSV文件中的测试数据 for row in data: print(row)

十三 生成随机颜色代码

import random def generate_random_color(): return "#{:02X}{:02X}{:02X}".format(random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)) print(generate_random_color())

十四 生成随机JSON对象

import json import random import string def generate_random_json(): data = { 'key1': random.choice(string.ascii_letters) + str(random.randint(0, 9)), 'key2': random.uniform(1.0, 100.0), 'key3': [random.randint(0, 100) for _ in range(5)], 'key4': { 'subkey1': random.choice([True, False]), 'subkey2': generate_random_string(10) } } return json.dumps(data) print(generate_random_json())

十五 随机生成MAC地址

import random def generate_random_mac(): mac = [0x00, 0x1A, 0x2B, random.randint(0x00, 0xff), random.randint(0x00, 0xff), random.randint(0x00, 0xff)] return ':'.join(map(lambda x: format(x, '02x'), mac))

以上就是今天的全部内容,希望对大家有所帮助。

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 4:24:48

AI论文工具排名显示,6种兼具写作和降重功能的平台效果显著

学术写作领域现已有多种人工智能工具可高效完成文本创作与查重降重任务,这些智能系统基于先进的自然语言处理算法,能够提供论文结构设计、语言润色以及重复率检测等核心功能,特别适合学位论文写作和学术报告准备等应用场景。需要强调的是&…

作者头像 李华
网站建设 2026/4/23 11:27:11

科研新手福音:AI智能改写开题报告模板内容

工具对比速览 工具名称 核心功能 适用场景 效率评分 特色优势 AIBiYe 开题报告生成/降重 中文论文全流程 ★★★★★ 国内院校适配度高 AICheck 初稿生成/格式检查 快速产出框架 ★★★★☆ 结构化输出优秀 AskPaper 文献综述辅助 外文文献处理 ★★★★ 跨…

作者头像 李华
网站建设 2026/4/11 17:40:36

零门槛掌握AI视频剪辑本地部署:从安装到应用全指南

零门槛掌握AI视频剪辑本地部署:从安装到应用全指南 【免费下载链接】FunClip Open-source, accurate and easy-to-use video clipping tool, LLM based AI clipping intergrated || 开源、精准、方便的视频切片工具,集成了大语言模型AI智能剪辑功能 项…

作者头像 李华
网站建设 2026/3/27 14:46:49

反季果蔬大棚远程监控管理平台解决方案

基于物联网技术与智能数据分析的远程监控管理平台,能够实时采集反季果蔬大棚内的关键环境参数与设备状态,实现远程监测、智能调控与精准管理。该平台有效应对反季种植中环境波动大、管理难度高等问题,帮助农户稳定生产节奏、提升果蔬品质、降…

作者头像 李华
网站建设 2026/4/23 11:25:47

零代码可视化新纪元:业务驱动图表设计的突破与实践

零代码可视化新纪元:业务驱动图表设计的突破与实践 【免费下载链接】charticulator Interactive Layout-Aware Construction of Bespoke Charts 项目地址: https://gitcode.com/gh_mirrors/ch/charticulator 当市场部要求3小时内完成动态数据看板&#xff0c…

作者头像 李华