【高效】生成人物测试数据!

我们都知道,一款软件被开发出来的过程中一般会经历开发、测试、生产阶段。这三个阶段分别对应了三种环境:

  • 开发环境
  • 测试环境
  • 生产环境

在这三种环境中只有生产环境的数据是真实的,其余两个环境均为测试数据也就是我们常说的假数据。在开发和测试的阶段我们需要大量且合理的假数据。我在刚开始工作的时候只会自己造数据,什么张三、李四、王五。。。造出来的数据不仅不美观而且有很大的局限性!

那么有没有什么方法能生成合理的测试数据呢?

今天来介绍两种方法,能快速的生成一个完整的人物信息!

Faker 工具库

Faker 是一个常用于生成虚假数据的开发工具库,用于开发和测试环境中模拟真实数据。它能生成各种类型的虚假数据,包括姓名、地址、电子邮件地址、电话号码、日期等,来帮助开发人员创建测试数据、填充数据库等任务。

集成Faker(以Maven为例)

xml 复制代码
<dependency>
    <groupId>com.github.javafaker</groupId>
    <artifactId>javafaker</artifactId>
    <version>1.0.2</version> 
</dependency>

service层

新建一个service类,在其中实现调用Faker库的过程。具体写法如下。

controller层

controller接口用于将生成的数据以json格式返回。代码如下。

postman测试

我们可以看到接口返回了一个完整的人物信息。如果想生成中文信息只需要在Faker类构造的时候指定区域。例如:

Faker faker = new Faker(new Locale("zh_CN"));

第三方API

如果不想引入第三方工具库还可以借助第三方API来生成完整的人物信息。例如:

randomuser.me/api/

service层

根据配置文件中的URL来调用第三方API。代码如下。

controller层

postman测试

我们可以看到,返回的测试数据非常完整,甚至包括了人物的头像。

总结

以上就是两种常用的生成人物测试数据的方法,可以生成完整且饱满的人物信息!

更多文章源码,推荐公众号【程序员老J】

相关推荐
不光头强16 分钟前
spring cloud知识总结
后端·spring·spring cloud
Mike117.17 分钟前
GBase 8a 日期边界写法和时间窗口取数偏差
数据库
SPC的存折2 小时前
1、Redis数据库基础
linux·运维·服务器·数据库·redis·缓存
GetcharZp3 小时前
告别 Python 依赖!用 LangChainGo 打造高性能大模型应用,Go 程序员必看!
后端
阿里加多3 小时前
第 4 章:Go 线程模型——GMP 深度解析
java·开发语言·后端·golang
小小李程序员4 小时前
Langchain4j工具调用获取不到ThreadLocal
java·后端·ai
MatrixOrigin5 小时前
数据库没有死,只是范式变了
数据库·oracle
GreenTea6 小时前
AI Agent 评测的下半场:从方法论到落地实践
前端·人工智能·后端