EasyMock 新版本用法和實戰經驗總結和mock.js 使用的用法

1.新版的界面說明:

1.1 easymock主界面:


1.2 swagger 同步生成接口信息配置
首先:

其次:點擊同步swagger 就能夠同步接口了。

1.3 顯示接口信息:





1.4 顯示預覽數據:


1.5 mock model 數據結構:這裏的常用語法請查看下面的具體說明:


2.生產的mock 常用預發詳解:這裏的預發使用的是 mock.js 的語法。mock js 點擊 :http://mockjs.com/
但是現在easymock 上語法有少量數據不能夠兼容,現在發現的是“|+1” 這種寫法是不支持的,mock.js 是支持的。
{
"cname": "@cname",//中文人名
"id": "@id",//生成20 位數字
"title": "@ctitle",//中文title
"city": "@city",//中文城市
"ip": "@ip",//ip 地址
"email": "@email",//email
"url": "@url",//url
"cfirst": "@cfirst",//姓名,姓
"clast": "@clast",//姓名,名
"cword": "@cword('123456')",//123456 從中選取一個字符
"csentence": "@csentence(1,5)",//文字文段
"csentence5": "@csentence(5)",//文字文段
"cparagraph": "@cparagraph(1,3)",//文字文段
"string": "@string(11)",//輸出11 個字符長度的字符串
"float": "@float(0,10)",//0 到 10 的浮點數
"int": "@integer(60,70)",//60 到 70 之間的整數
"boolean": "@boolean",//boolean 類型 true,false
"array|1-3": [{
"id": "@integer(1,10)",//整數 1到10 取整數
"name": "cname"
}],//數組(隨機 1 到3個)
"array_sort_add|+1": ["1", "2", "3"],//數組1,2,3輪詢輸出
"boolean|1-2": true,//boolean 類型 true,false
"actionType|1": ['click_url', 'open_resource_detail', 'open_resource_search'],
"payload": function() {
      var returnClickUrl = {
        "linkUrl": "http://tob.zhisland.com/apph5"
      };
      var returnResourceDetail = {
        "resourceId": "606"
      };
      var returnResourceSearch = {
        "keyWords": "",
        "tagCategory": "1",
        "tag": "1"
      };
      var s = this.actionType == 'click_url' ? returnClickUrl : this.actionType == 'open_resource_detail' ? returnResourceDetail : returnResourceSearch;
      return s;
 }//function 返回設置返回的數據
}
預覽的效果:


3.開發中常用的技巧:
mock 數據 在開發中的使用,這裏用一張RAP(企業級應用,包括阿里集團在內得350多個企業都在使用RAP管理重要的接口文檔) 的開發流程圖進行說明:

1.首先根據需求分析定義入參和返回數據以及其他的接口信息,然後前端根據制定的規則,根據創建mock 數據,這時候後端進行接口的開發,並且進行單元性測試。

以及覆蓋性測試,可以使用mockito來做,之後兩端開發完畢之後比對mock 數據進行聯調,調試完畢後提供一個可測試版本,然後提測,進行自動化測試。

2.這是  RAP 的開發模式,其實有些細節的點這張圖是沒說清楚的;

比如前端寫mock 還是後端寫mock 問題(這裏面有需求變動時的維護方問題),接口同步時出現接口不匹配問題。

比如說mock 數據怎麼同步,目前easy mock 可以解決這個問題,使用swagger2 同步可以很方便的對數據進行同步維護,保證前後端在各自獨立開發時進行一些信息的同步。(easymock 地址  https://easy-mock.com/login)

這些問題都是需要我們在實戰中去思考的。怎麼才能提高效率我覺得更多的還是要去和人打交道,保持信息在開發中的同步,注意這個框架並不是說讓我們前後端各做各的,而是互不影響。

3.還有目前的easy mock 在開發中還是會遇到一些問題,比如說,swagger2 同步會將已經寫好了的mock 數據,同步丟失,還有一個比較頭疼的問題,mock 數據定義的結構。和預覽的時候的數據會不同,原因是它顯示的數據是其他的mock 結構的數據。解決辦法是刪除接口重新創建。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章