生成数据和测试的有用工具
PGen的Python项目详细描述
pgen提供数据生成和给定的测试 格式(数字、字符串、图形等)。 PGEN仍在积极开发中,包括 漏洞。如果发现错误,请在 issues section。
特点:
- 输入格式为JSON文本或对象
- 无限深度的数据
- 没有依赖关系的纯python
- 基本类型生成(int、double、string)
- 生成复杂类型(图、树、容器)
安装:
pip install PGen
文档:
基本类型:
- 内景
- 双倍
- 字符串
复杂类型:
- 配对
- 容器
- 数组
- 树
- 图表
将很快延长…
示例:
典型用法通常如下:
#!/usr/bin/env python from pgen.generator import Generator data_description = { 'seed': 42, 'count': 3, 'format': { 'name': 'N', 'type': 'int', 'from': 10, 'to': 100 }, 'output': { 'type': 'file', 'format': 'tests/{0:03d}.dat', 'start_index': 3 } } generator = Generator(data_description) generator.write()
使用变量名:
#!/usr/bin/env python from pgen.generator import Generator data_description = { 'seed': 42, 'count': 3, 'format': { 'type': 'container', 'elements': [ {'name': 'n', 'type': 'int', 'from': 3, 'to': 15}, { 'type': 'array', 'length': 'n', 'subelement': { 'type': 'int', 'from': 0, 'to': 1 } } ] }, 'output': { 'type': 'file', 'format': 'tests/y_{0:03d}.dat', 'start_index': 3 } } generator = Generator(data_description) generator.write()
字符串模式:
#!/usr/bin/env python from pgen.generator import Generator data_description = { 'seed': 42, 'count': 3, 'format': { 'type': 'string', 'length': 32, 'patterns': ['A-B', 'a-b'] }, 'output': { 'type': 'file', 'format': 'test/{0:03d}_out.dat', 'start_index': 3 } } generator = Generator(data_description) generator.write()