接口自動化框架要搭成什麼,裏面的內容究竟應該有多少?
這個問題沒有標準答案,由於這要取決於你的項目,以及你想要用框架來解決什麼問題等多種因素。html
固然了,這裏也就不展開討論了,仍是回到接口自動化這個點,來講一說你至少改具有的東西。java
若是有特殊要求用某種語言的話,你沒什麼好選。若是沒有特殊要求,我我的偏向於使用python語言。python
筆者以前也曾參與過基於java語言的接口自動化開發跟維護,框架用的是testng,雖然組內大佬已經盡力
將框架維護的比較好用,可是用起來始終不如python爽。或許這也是習慣的緣由吧,誰叫我是先學python,
後學的java呢。mysql
我記得當時領導說是爲了讓測試的開發語言與開發同步,因此就讓咱們轉用java來開發了。可是我仍是那句話,
若是沒有特殊要求,我仍是果斷擁抱python。sql
這裏要再加個題外話,那是否是以爲會用python就足夠了?擱之前或許是吧,可是如今確定不是了。java仍是
要學的,你看看大多數公司開發用的什麼語言,就是java。反正多掌握幾個主流的開發語言確定不會虧。數據庫
既然語言定了,單元測試框架也就好選了。筆者是基於python進行分享,那麼就不得不提unittest個pytest了。
unittest是python自帶的單元測試框架,而pytest則是一個第三方的測試框架。直接給結論,用pytest,優勢
多多,插件生態豐富,誰用誰知道。附上pytest的官方文檔,不過是英文的。
可是仍是推薦多去看看,多寫寫,多體會。
編程
筆者在陸續寫一個【解讀pytest官方文檔】系列,已經寫了一些,有興趣的能夠翻一下。框架
框架定了pytest,那麼就能夠用它結合着衆多優秀的開源庫去實現本身的需求啦,這裏寫幾個經常使用的:編程語言
上面說的都齊了,框架也就有了。至於結構到底怎麼樣,仍是因人、項目而已,怎麼適合怎麼來。單元測試
圖裏的這個結構,並非我目前項目在用的,可是這幾個東西是基本結構,用處分別是:
這裏僅僅做示意,名字隨便起,只要合適就行。
目前項目裏在跑的框架內容就比這多了很多了,畢竟裏面是好幾個業務都在一塊兒,而後就有了各類各樣的問題,
須要框架去兼容解決,天然而然東西就會變多。
本文中只提供思路,供想要搭建接口自動化框架的夥伴參考,有問題能夠留言或者私信我,固然了推薦最直接的就是
去搜索了,畢竟這是寫代碼的一項重要技能!!!
接下來會分享編寫接口自動化case須要注意的那些點。