淺談測試數(shù)據(jù)銀行的設(shè)計(jì)思路--Faker庫引用構(gòu)造器再封裝

數(shù)據(jù)銀行特點(diǎn):去除自己需要一個(gè)個(gè)給定義的變量或者結(jié)構(gòu)體進(jìn)行賦值的操作,統(tǒng)一設(shè)計(jì)一個(gè)結(jié)構(gòu)體的json模板或者字符串模板。 然后讓期調(diào)用再次封裝的Faker的類,從而產(chǎn)生隨機(jī)的測試數(shù)據(jù)。

Faker主要用來生成一些和人物相關(guān)以及一些常用的日常信息的一些偽數(shù)據(jù)。比如姓名、手機(jī)號、地址、郵箱之類的、身份證號、二維碼、經(jīng)緯度、隨機(jī)字符串文本、以及還有一些定義封裝的一些個(gè)人信息數(shù)據(jù)字典以及隨機(jī)字段的字典等等。順便一提 里面沒有年齡的構(gòu)造方法

然后使用的話,直接引用包就行了,

????????from faker import Faker

? ? 然后進(jìn)行中文的初始化:

????????f=Faker(locale='zh_CN')

? ? 中文初始化以后生產(chǎn)的數(shù)據(jù)就是i中文數(shù)據(jù)。如下圖


如果不加入?yún)?shù)? 直接faker=Faker()的話,默認(rèn)返回的數(shù)據(jù)都是英文數(shù)據(jù)。


自定義構(gòu)造器構(gòu)造方法

這個(gè)引用數(shù)據(jù)視實(shí)際情況而定。

然后上面提到有些方法是Faker第三方庫里面不提供的,所以我們需要引用Faker庫里面的基類BaseProvider構(gòu)造器,來重構(gòu)一些自己需要的方法。 比如上圖的年齡方法,以及一個(gè)個(gè)人信息的方法。?

構(gòu)造器的使用方法官方文檔:https://faker.readthedocs.io/en/master/index.html#how-to-create-a-provider


下面要注意了 不讓容易踩雷,一般我們定義好了構(gòu)造器的方法或者重構(gòu)了這個(gè)類以后,會(huì)通過其他的類里面去調(diào)用這個(gè)里面的方法。 這個(gè)時(shí)候我們在調(diào)用的時(shí)候一樣要寫絕對路徑,而不是相對路徑。


把路徑改成絕對路徑就行了


引用借鑒?https://www.cnblogs.com/xxcr/p/12781457.html 的解決方法。

然后其他的需要的構(gòu)造方法,大家自己根據(jù)自己的需求去重新定義的類里面 去定義相關(guān)的構(gòu)造器 然后add到Faker的庫里面就行了。


下面是Faker庫的一些介紹以及一些常用方法的調(diào)用和介紹。

Faker庫介紹-知乎:https://zhuanlan.zhihu.com/p/87203290

Python庫Faker的使用(1):基礎(chǔ)使用方法與函數(shù)速查:https://blog.csdn.net/aasdad1/article/details/82854971

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容