Java基于Javafaker生成測(cè)試數(shù)據(jù)
1. 前言
老板說,明天甲方要來看產(chǎn)品,你得造點(diǎn)數(shù)據(jù),而且數(shù)據(jù)必須是“真”的,演示效果要好看一些,這樣他才會(huì)買我們的產(chǎn)品,我好明年給你換個(gè)嫂子。一般開發(fā)接到這種過分要求都不會(huì)很樂意去做,這完全是體力勞動(dòng),而且很棘手。今天胖哥教你一招,讓你做出逼真的“假”數(shù)據(jù)。
2. javafaker
我們Java是有可以生成仿真數(shù)據(jù)的框架的,這里我安利一個(gè)Javafaker的框架,你只需要在項(xiàng)目中引入:
<dependency>
<groupId>com.github.javafaker</groupId>
<artifactId>javafaker</artifactId>
<version>1.0.2</version>
</dependency>
忘記說了它主要的使用場(chǎng)景就是為了制造仿真測(cè)試數(shù)據(jù),而并不是用來造假。
然后胖哥來演示一下它的用法,先定義一個(gè)Java Bean :
/**
* User info.
*
* @author felord.cn
* @since 10 :50
*/
@Data
public class UserInfo {
/**
* 真實(shí)姓名
*/
private String realName;
/**
* 手機(jī)
*/
private String cellPhone;
/**
* 大學(xué)
*/
private String universityName;
/**
* 城市
*/
private String city;
/**
* 地址
*/
private String street;
}
然后聲明一個(gè)Faker對(duì)象,你可以根據(jù)需要進(jìn)行本地化聲明,如果是使用中國的:
Faker fakerWithCN = new Faker(Locale.CHINA);
你要是想造點(diǎn)美帝的數(shù)據(jù)就改成這樣:
Faker fakerWithUS = new Faker(Locale.US);
這里我們使用中國來生成模擬10條仿真數(shù)據(jù):
for (int i = 0; i < 10; i++) {
UserInfo userInfo = new UserInfo();
userInfo.setRealName(fakerWithCN.name().fullName());
userInfo.setCellPhone(fakerWithCN.phoneNumber().cellPhone());
userInfo.setCity(fakerWithCN.address().city());
userInfo.setStreet(fakerWithCN.address().streetAddress());
userInfo.setUniversityName(fakerWithCN.university().name());
System.out.println("userInfo = " + userInfo);
}
我們來看下結(jié)果:

是不是看上去跟真的一樣,但是一定要用到正途,不要用到歪門邪道上。
3. 總結(jié)
用了javafaker之后我們不但可以完成老板提出的需求,而且可以減少我們平常使用測(cè)試的時(shí)候用各種test填充的局面。好了今天的分享就到這里。我是 碼農(nóng)小胖哥,多多關(guān)注,分享更多有用的編程干貨。
以上就是Java基于Javafaker生成測(cè)試數(shù)據(jù)的詳細(xì)內(nèi)容,更多關(guān)于Javafaker生成測(cè)試數(shù)據(jù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
詳解Spring Cloud 跨服務(wù)數(shù)據(jù)聚合框架
這篇文章主要介紹了詳解Spring Cloud 跨服務(wù)數(shù)據(jù)聚合框架,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-03-03
Java Spring-IOC容器與Bean管理之基于注解的方式案例詳解
這篇文章主要介紹了Java Spring-IOC容器與Bean管理之基于注解的方式案例詳解,本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08
如何從Java環(huán)境中調(diào)用GoLang函數(shù)
Go,常被稱為GoLang,Go語言憑借其豐富的標(biāo)準(zhǔn)庫,以及 goroutines和 channels等獨(dú)特特性,在開發(fā)可擴(kuò)展且高效的程序方面展現(xiàn)了顯著優(yōu)勢(shì),許多開發(fā)者傾向于將Go與其他編程語言結(jié)合使用,在本文中,我們將深入探討如何從Java環(huán)境中調(diào)用GoLang函數(shù),以實(shí)現(xiàn)兩種語言的無縫集成2025-01-01
SpringBoot?如何使用sharding?jdbc進(jìn)行分庫分表
這篇文章主要介紹了SpringBoot?如何使用sharding?jdbc進(jìn)行分庫分表,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-02-02

