Apifox mac版是一款適用于macOS系統的API接口調試工具,集API文檔、API調試、API Mock、API自動化測試多項實用功能為一體,定位為 Postman + Swagger + Mock + JMeter,可以通過一套系統、一份數據,解決多個工具之間的數據同步問題,從而幫助用戶快速生成接口請求、文檔、代碼,并進行自動化測試和數據導入導出。不僅僅如此,軟件功能十分的強大,如:支持如環境變量、預執行腳本、后執行腳本、Cookie/Session 全局共享等功能,可以說非常適合前端測試人員使用。
使用Apifox,用戶可以設計出新的接口,讓您的程序和系統都能夠正常的訪問數據,甚至還可以直接在Apifox軟件中編輯新的接口內容,用戶在定義文檔之后直接使用數據,以及能夠調試接口的時候直接使用接口文檔,完全是不需要再次定義新的文檔內容的哦。此外在這里用戶只需要定義好API文檔、API調試、API數據Mock以及API自動化測試就可以直接進行使用,完全不需要再次進行定義,其中API文檔和API開發調試可以使用同一個工具,在API調試之后就即可保證和API文檔定義完全一致,使用起來非常的高效、及時、準確,有感興趣的朋友可以來本站下載。
軟件功能
一、一套系統、一份數據,解決多個 API 工具之間的數據同步問題
只要定義好 API 文檔,API 調試、API Mock、API 自動化測試即可直接使用,無需再次定義。
API 文檔和 API 開發調試使用同一個工具,API 調試完成后即可保證和 API 文檔定義完全一致。高效、及時、準確!
二、可視化 API 設計
1、高效 & 零學習成本
可視化 API 文檔設計功能,無需手寫 Markdown 或 YAML,零學習成本,高效便捷。
2、可復用的“數據模型”
可將常用數據結構定義為“數據模型”,在多個接口中引用,一次修改全局生效。
3、遵循 OpenAPI(Swagger) 規范
接口文檔完全遵循 OpenAPI(Swagger) 規范,支持 JSON Schema
4、可導入 Swagger 等 20+ 數據格式
支持導入 Swagger (OpenAPl) , Postman, Jmeter, apiDoc, RAP2, YApi, Eolink, Apipost 等數據格式。
三、比 Postman 更強大
1、一鍵調試,無需復制黏貼
只要設計完(或導入)API 文檔,即可一鍵調試,無需復制黏貼各種 URL 或參數。
2、“自動校驗”返回數據結構的正確性
依據接口文檔自動判斷返回數據結構是否正確,無需手寫斷言。
3、獨創的“接口用例”功能
保存多組接口請求參數,輕松覆蓋一個接口的各種實例,方便后端自測和測試編寫用例。
4、全面兼容 Postman 功能和腳本語法
Postman 的接口前置腳本和測試腳本可以直接在 Apifox 內運行,并支持引用公共腳本。
5、支持 JS/Java/Python/PHP 等語言
腳本中支持引用 JS/Java/Python/PHP 等語言的包。
四、零門檻實現自動化測試
1、可視化編排測試步驟,零代碼
支持可視化地編排自動化測試步驟,無需手寫腳本代碼。
2、API 文檔基礎上,一鍵導入,實時同步
基于設計好的 API 文檔,一鍵導入,自動生產“自動化測試用例”,無需手動添加,并且 API 變更實時自動同步。
3、可視化添加斷言,支持讀寫數據庫
接口用例支持可視化的斷言,也可連接MySQL等多種數據庫讀寫數據。
4、支持“數據驅動”測試
可導入CSV/JSON 格式的測試數據,使用測試數據運行測試用例并產出測試報告。
5、支持 CI/CD 持續集成
支持使用命令行方式運行測試用例并產出測試報告,可與 Jenkins等持續集成工具打通使用。
五、分享&發布 API 文檔
1、一鍵發布&分享
設計完(或導入) 的API 文檔,一鍵分享給合作伙伴,接口變更實時同步,支持公開或加密發布。
2、API 文檔支持“在線調試”
API 文檔頁面支持“調試”功能,可以在線請求真實接口并返回數據。
3、自定義導航、自定義樣式
API 文檔可自定義導航和頁面樣式,可以將 API 文檔的導航條做成跟官網一致。
4、個性化域名、自定義域名
支持自定義的 Apifox 文檔域名,也可綁定到自有的域名。
5、自動生成代碼
在線文檔支持生成20 多種語言的接口請求代碼和數據模型代碼。
六、零配置 Mock 數據
1、無需手寫 Mock 規則
只要定義好 API 文檔,“零配置”即可自動 mock 出非常“人性化”的數據(根據數據結構及字段名智能 mock)
2、API 變更后 Mock 數據實時同步變更
API 文檔更改時,Mock 數據會自動變更,無需改動任何腳本。
3、支持根據請求參數返回不同結果
高級 Mock 支持配置不同的期望,根據請求參數返回不同結果。
4、內置 Mock.js 規則引擎
內置 Mock.js 規則引擎,可自定義符合 Mock.js 語法的 Mock 腳本。
5、支持自定義腳本 Mock
自定義腳本 Mock 支持二次修改智能 Mock 的結果,實現 Mock 字段之間的邏輯關聯。
Apifox基本使用教程
一、如何解決這些問題
1、定位
Apifox = Postman + Swagger + Mock + JMeter
它是 API 文檔、API 調試、API Mock、API 自動化測試一體化協作平臺。
通過一套系統、一份數據,解決多個系統之間的數據同步問題。只要定義好接口文檔,接口調試、數據 Mock、接口測試就可以直接使用,無需再次定義;接口文檔和接口開發調試使用同一個工具,接口調試完成后即可保證和接口文檔定義完全一致。高效、及時、準確!
2、宗旨
節省研發團隊的每一分鐘!
二、Apifox 做的不僅僅是數據打通
如果你認為該軟件只做了數據打通,來提升研發團隊的效率,那就錯了還做了非常多的創新,來提升開發人員的效率。
1、接口支持“用例管理”
通常一個接口會有多種情況用例,比如正確用例參數錯誤用例數據為空用例不同數據狀態用例。定義接口的時候定義好這些不同狀態的用例,接口調試的時候直接運行,非常高效。
2、“數據模型”定義、引用
可以獨立定義數據模型,接口定義時可以直接引用數據模型,數據模型之間也可以相互引用。同樣的數據結構,只需要定義一次即可多處使用;修改的時候只需要修改一處,多處實時更新,避免不一致。
3、調試時“自動校驗”數據結構
使用它調試接口的時候,系統會根據接口文檔里的定義,自動校驗返回的數據結構是否正確,無需通過肉眼識別,也無需手動寫斷言腳本檢測,非常高效!
4、“可視化”設置斷言
設置斷言:
運行后,查看斷言結果:
5、“可視化”設置提取變量
6、支持數據庫操作
7、“零配置”Mock 出非常人性化的數據
先放一張圖對比下 Apifox 和其他同類工具零配置mock 出來的數據效果:
Apifox Mock 數據結果對比同類工具
可以看出零配置Mock 出來的數據和真實情況是非常接近的,前端開發可以直接使用,而無需再手動寫 mock 規則。
如何做到高效率、零配置生成非常人性化的 mock 數據
根據接口定義里的數據結構、數據類型,自動生成 mock 規則。
內置智能 mock 規則庫,根據字段名、字段數據類型,智能優化自動生成的 mock 規則。如:名稱包含字符串image的string類型字段,自動 mock 出一個圖片地址 URL;包含字符串time的string類型字段,自動 mock 出一個時間字符串;包含字符串city的string類型字段,自動 mock 出一個城市名。
根據內置規則,可自動識別出圖片、頭像、用戶名、手機號、網址、日期、時間、時間戳、郵箱、省份、城市、地址、IP 等字段,從而 Mock 出非常人性化的數據。
除了內置 mock 規則,用戶還可以自定義規則庫,滿足各種個性化需求。支持使用正則表達式、通配符來匹配字段名自定義 mock 規則。
8、生成在線接口文檔
項目可“在線分享” API 文檔,分享出去的 API 文檔可設置為公開或需要密碼訪問,非常方便與外部團隊協作。
9、代碼自動生成
根據接口模型定義,自動生成各種語言/框架(如 TypeScript、Java、Go、Swift、ObjectiveC、Kotlin、Dart、C++、C#、Rust 等)的業務代碼(如 Model、Controller、單元測試代碼等)和接口請求代碼。目前支持 130 種語言及框架的代碼自動生成。
更重要的是:你可以通過自定義代碼模板來生成符合自己團隊的架構規范的代碼,滿足各種個性化的需求。
10、導入、導出
支持導出OpenApi (Swagger)、Markdown、Html等數據格式,因為可以導出OpenApi格式數據,所以你可以利用 OpenApi (Swagger) 豐富的生態工具完成各種接口相關的事情。
支持導入OpenApi (Swagger)、Postman、apiDoc、HAR、RAML、RAP2、YApi、Eolinker、NEI、DOClever、ApiPost、Apizza、ShowDoc、API Blueprint、I/O Docs、WADL、Google Discovery等數據格式,方便舊項目遷移。
支持定時自動導入OpenApi (Swagger)、apiDoc、Apifox格式數據。
常見問題
1、使用 Postman 調用接口返回正常,而返回錯誤
解決方法:對比 postman 和該應用實際發出的請求內容(url、參數、body、header)是否完全一樣。
查看實際請求內容方法:
Postman:點擊底部狀態欄里的Console查看。
Apifox:返回內容下的實際請求 tab (老版本為Request tab) 里查看。
2、同項目下有不同域名的接口,如何處理?
方法一:在環境里新增多個服務,分別設置不同的前置 URL,接口分組和接口維度可以指定對應的前置 URL。推薦本方案。
方法二:給不同域名接口設置不同環境,通過切換環境來運行不同域名下的接口。不推薦本方案。
方法三:把域名設置成環境變量如DOMAIN_1,接口路徑這樣填寫:https:///users。接口路徑是以http://或https://起始的,系統會自動忽略里環境里前置 URL。
3、為什么修改了環境變量(或全局變量)值,而引用的地方沒有生效?
請檢查修改的是否是本地值,環境變量(或全局變量)僅讀取本地值,而不會讀取遠程值。
請檢查環境變量、全局變量、臨時變量里是不是有多個地方定義了相同名稱的變量,如果有,系統會根據優先級來取值。
優先級順序如下:臨時變量>環境變量>全局變量。
更新日志
v2.6.7版本
【新功能】HTTP 項目 支持 接口版本 的創建與管理,包括全量的 HTTP 接口、數據模型、響應組件、Markdown 文檔 資源
【新功能】可以創建 通用接口文檔 來管理自定義協議的文檔,支持配置協議名稱和唯一標識,支持 在線分享
【新功能】可以配置接口目錄在 在線文檔 中的展示方式,可選項為普通目錄、模塊標題、跳轉到子目錄
【新功能】可以 定時導入 YApi 格式的數據
【優化】調試接口、用例時,在發送請求之前,默認折疊 返回響應 區域
【優化】調試接口、用例時,如果光標在地址欄內,可以直接通過回車鍵發送請求
【優化】導入 Markdown 文檔時,如果目錄和名稱都相同,則視為同名文件
解決暫停自動化測試再繼續運行時,某些情況下報錯的問題
解決導入 ShowDoc 格式的數據時,某些情況下報錯的問題
解決導入 apiDoc 格式的數據時,某些情況下界面失去響應的問題



