摘要:沙箱,第一反應(yīng),但并不是。為避免誤解,下文中所有提到都是指這個(gè)工具,不是沙箱。做什么的,根據(jù)其官網(wǎng)上的描述可以理解為快速生成,即時(shí)部署,協(xié)作構(gòu)建并集成了調(diào)試工具。對(duì)個(gè)人而言,強(qiáng)烈推薦給入門的人。
Sandbox--沙箱,第一反應(yīng),但sorry并不是。
sandbox 這個(gè)詞大家并不陌生,但貌似國內(nèi)的技術(shù)share中很少看到有提到這個(gè)工具的。
為避免誤解,下文中所有提到sandbox都是指sandbox這個(gè)工具,不是沙箱。
另外在兩周的使用過程中,感覺比我之前嘗試過的mock service的方法都要舒服,并且對(duì)程序員更友好。所以愿意安利一波。
希望有遇到同樣痛點(diǎn)的朋友,可以給feedback有不同觀點(diǎn)也歡迎交流指正。
Sandbox做什么的,根據(jù)其官網(wǎng)上的描述
Quick and easy mock RESTful API and SOAP webservices. Generate from API definitions, instant deploy, collaborative build, and debugging tools for integration.
可以理解為快速生成API,即時(shí)部署,協(xié)作構(gòu)建并集成了調(diào)試工具。
更簡單的說,你可以用它做假的API,并且馬上就可以用。
你可能需要懂點(diǎn)js;
理解下Sandbox 里面的state;
基本上寫代碼的部分超級(jí)簡單,demo自取,getting-start也很簡單。
我只是share下有這么個(gè)工具,以及簡單的用法,其實(shí)一步一步的步驟不用講太多,很簡單動(dòng)手即可。
聊為什么要用sandbox前,說說我之前用過什么其他的方式做mock service吧。
寫js的時(shí)候,用express寫過假的后端service,處理簡單數(shù)據(jù)還行,后面發(fā)現(xiàn)數(shù)據(jù)驗(yàn)證,數(shù)據(jù)狀態(tài)不抽離,越到后面越難mock,寫ruby的時(shí)候,用sinatra直接寫了fake server;
遇到過數(shù)據(jù)量好大,已有的數(shù)據(jù)在假server重啟后就木有了,中間也用過mongodb,但是那個(gè)只是解決數(shù)據(jù)源,并且無形中也是增加了mock的effort;
也有同事推薦swagger,但沒用上手,因?yàn)橐矝]發(fā)現(xiàn)多方便 ,反倒發(fā)現(xiàn)swagger-ui很友好;
國內(nèi)看到有人做了個(gè)叫做easy mock的, 感覺對(duì)不懂代碼的貌似蠻友好各種點(diǎn)點(diǎn)點(diǎn),但是我還是喜歡直接敲代碼那種;
中間有陣子用了docker+mountebank,對(duì)于純粹只是get的,能把業(yè)務(wù)邏輯和數(shù)據(jù)分離,還算蠻好用,也是只用處理代碼就好,但對(duì)于剛?cè)腴T,可能不推薦。
github上也有一些利用json文件做fake server的 如json-server
聊了這么多,大概可以回答我為什么會(huì)推薦使用sandbox了
關(guān)注code,不偏愛UI操作;
簡單,懂js就好,不需要額外effort(mongodb,docker)
state能夠保存數(shù)據(jù),即使進(jìn)行到后面,也比較好繼續(xù)添加新的相關(guān)聯(lián)的api
When對(duì)項(xiàng)目而言,還是覺得最開始就可以;
如果是中期replace為sandbox,如果原來是用類似express的方法,還蠻簡單的,如果是其他語言或技術(shù)棧的建議先做MVP的spike。
對(duì)個(gè)人而言,強(qiáng)烈推薦給入門的人。
缺點(diǎn)安利了那么多,基于客觀事實(shí),還是要說些我遇到的不好的方面,
數(shù)據(jù)丟失,隔了2天,有一次我的get API沒法拿到數(shù)據(jù),所以最好要初始化數(shù)據(jù)的設(shè)計(jì),方便恢復(fù);
服務(wù)器不穩(wěn)定,官網(wǎng)直接掛掉,我經(jīng)歷過一次;
個(gè)人concern ,如果mock service中涉及敏感數(shù)據(jù)以及安全信息,建議先做一些處理,畢竟放在網(wǎng)上的沒有你的本機(jī)安全
free plan有request次數(shù)限制,今天就遇到了
排除以上幾點(diǎn),在開發(fā)code方面,個(gè)人覺得對(duì)程序員還是蠻友好的。
因?yàn)閙ock service本身其實(shí)對(duì)數(shù)據(jù)的穩(wěn)定性要求也沒那么高所以還可以接受(我遇到的case)
除了直接在web上的頁面上直接寫代碼,也可以把代碼sync到github的codebase里面,這樣你只要有本地編輯器+網(wǎng)絡(luò)+git就好了;
中間開發(fā)基于ios的應(yīng)用的時(shí)候,只能支持https協(xié)議,如果是本地mock的service 需要去改配置,這個(gè)支持https協(xié)議,0改動(dòng);
會(huì)給一個(gè)域名下的資源鏈接,所有人可以訪問,相當(dāng)于你的資源以及API就是放在互聯(lián)網(wǎng)上面的
P.S.其他mock service 推薦Mocky 實(shí)時(shí)當(dāng)下馬上可測(cè),但是狀態(tài)應(yīng)該不可保存。slogan是Mock your HTTP responses to test your REST API
mockable.io slogan是The Fastest way to mock your API
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/83723.html
摘要:的作用主要就是構(gòu)建一些的數(shù)據(jù)對(duì)象,大部分使用場(chǎng)景也是在測(cè)試中。具體使用時(shí)候,一般會(huì)有一個(gè)用來構(gòu)建,另外一個(gè)在需要數(shù)據(jù)的地方進(jìn)行直接引入。當(dāng)你厭倦已有的無論是字面量生成,還是單獨(dú)數(shù)據(jù)生成的方式。感覺用更符合語義以及函數(shù)思維。 Rosie? factory_girl? 如果說是單純命名上面,是受一幅畫的影響,畫里面的妹子叫Rosie;如果是項(xiàng)目靈感其實(shí)是來自于factory_girl,fa...
摘要:適用于主要入口頁面生成多頁,子頁面和次要頁面使用單頁形式的項(xiàng)目。文件用來存放固定的數(shù)據(jù),而文件可更加自由的處理并返回?cái)?shù)據(jù)。 VUE2的單頁應(yīng)用框架有人分享了,多頁應(yīng)用框架也有人分享了,這里分享一個(gè)單頁+多頁的混合應(yīng)用框架吧,node.js寫了一個(gè)簡單的mock服務(wù)也集成在里面,整體初現(xiàn)雛形,還有很多需要優(yōu)化和改善的地方。。。 項(xiàng)目結(jié)構(gòu) │ ├─build ...
摘要:在工作中,我們的前端工作流一般開始于前后端協(xié)商好文檔之后,再針對(duì)這個(gè)文檔做模擬數(shù)據(jù),然后用做好的進(jìn)行開發(fā),后端開發(fā)完畢之后再改一下數(shù)據(jù)的切換到正式進(jìn)行聯(lián)調(diào)如下本文介紹的一個(gè)工具或者說方法,來將這個(gè)工作流優(yōu)化一下,也是我平時(shí)工作正在用的方法, 在工作中,我們的前端工作流一般開始于前后端協(xié)商好Api文檔之后,再針對(duì)這個(gè)Api文檔做mock模擬數(shù)據(jù),然后用做好的mock進(jìn)行開發(fā),后端開發(fā)完畢...
摘要:概述在使用單元測(cè)試時(shí)經(jīng)常會(huì)遇到某些依賴了外部資源,或者想主動(dòng)繞過真正的方法執(zhí)行返回結(jié)果而快速得到單元測(cè)試最終的期望結(jié)果,可能有以下兩種場(chǎng)景,對(duì)于,設(shè)單元測(cè)試的方法是的方法和方法,在執(zhí)行和方法時(shí)都會(huì)調(diào)用的不同方法,即依賴了一個(gè)場(chǎng)景是完全對(duì)進(jìn)行 概述 在使用單元測(cè)試時(shí)經(jīng)常會(huì)遇到某些dependency依賴了外部資源,或者想主動(dòng)繞過真正的方法執(zhí)行mock返回結(jié)果而快速得到單元測(cè)試最終的期望結(jié)...
閱讀 1078·2023-04-26 02:21
閱讀 2881·2021-09-24 09:47
閱讀 1667·2019-08-30 15:55
閱讀 2239·2019-08-30 14:01
閱讀 2398·2019-08-29 14:01
閱讀 2114·2019-08-29 12:46
閱讀 878·2019-08-26 13:27
閱讀 2028·2019-08-26 12:23