<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## Apifox:填補 DevOps 自動化運維、部署、測試的最后一公里 —— 國產云時代的接口管理工具 **last update: 2022-07-04 15:23:11** ---- [TOC=3,8] ---- > DevOps 是云時代的開發標配,最近在團隊中推廣后收獲頗豐,發現大家 coding 的幸福指數都提高了,但我覺得似乎它還不夠完整,后來我知道了,它缺失了上線前的最后一公里 —— **集成 Apifox 的自動化測試。** ![](https://cdn.aipin100.cn/77ea8cf583b8408b49b38eac84bcd883) ![](https://cdn.apifox.cn/www/screenshot/dark-apifox-test-case-3.png) ![](https://cdn.aipin100.cn/1be03d70d6d366405cfe270b1ab2f2c0) ---- ### Apifox 是什么 ![](https://cdn.apifox.cn/logo/apifox-logo-text.png) ![](https://cdn.aipin100.cn/c246391ffde0a92b5170cb12221656f3) ~~~ Apifox = Postman(調試) + Swagger(文檔) + Mock(數據Mock) + JMeter(自動化測試) 前后端開發 后端開發 前端開發 無(測試手動測試app) ~~~ 這是我們之前的前后端開發流程,正對應官方說明的舊時代協作方式。 接口調試、API文檔、Mock 這些我想一線的前后端開發比我更有深有體會,不再使用各種各樣的工具,團隊在一個地方統一定義、調試接口,一致的協作體驗無疑能極大的提高效率。 我是后端開發,但更偏向于基礎設施、開發質量和協作方面的工作。所以我這里主要關注的是自動化測試。 ---- ### 為什么是 Apifox 第一次見到它時,我以為就是個換皮的 Postman,只是加了漢化而已,畢竟 Postman 要普及很多,哪怕沒有中文支持,國內開發者依然很熱衷它。 可很快我就發現,Apifox 確實是對前后端協作開發的痛點理解得最為深刻和徹底的,的確落實了官網的口號。此時我再對比發現確實是青出于藍了。這讓我想到一句話,**“解決方案會更快被淘汰掉,而問題能夠延續更久”,顯然 Postman 是前者,Apifox 是后者。** 前者提供的是解決方案,而后者是持續關注開發者api協作開發的這個問題。 Apifox 為什么要選擇走這樣一條任重而道遠的路,我也在后面找到了答案,原來 Apifox 創始人張劍光就是技術出身,且核心團隊源自之前的創業團隊,我在想這個項目或許是他們某次深夜下班時,看著疲憊不堪的自己,突然大喊一聲說:“我們就做這個吧!”,“對,早就該做了”,“你們知道我說的是什么吧”,...,他們是在為自己,為程序員這個群體做一款好用的工具,想到這里我會心的笑了。 Apifox 選擇與開發者站在一起,所以我們選擇與她站在一起。 ---- ### 我們怎么使用 Apifox ![](https://img-blog.csdnimg.cn/img_convert/8870a26c8d2d07ca5bd34a32aa95c1a7.png) “你這接口保熟嗎?”,“我剛測試還是好的,你再看看” 坦白地說,我想沒人敢對接口“保熟”。 基礎代碼我們都會寫單元測試,可是上線的接口,會牽扯到環境、業務依賴等各種情況,單純的構建過程顯然無法做到覆蓋所有接口測試的,在項目初期基礎代碼經常更改,誰能保證剛才還可以的接口現在還是好的呢? 在一天要發布十幾版,幾個環境時,人工手動測試如何能夠完全覆蓋到。 這就是我們面臨的問題:對接口進行測試非常繁瑣,不測試,無法“保熟”,無法安心睡覺。 [Apifox](https://www.apifox.cn/) 自動化測試 為我們提供了方向: ~~~ apifox run https://api.apifox.cn/api/v1/api-test/ci-config/123/detail?token=XXX -r html,cli ~~~ 我們將 Apifox 自動化測試 集成到我們的發布流程當中: ![](https://cdn.aipin100.cn/6bb29fa1b0f6c821aa1698b02886c533) ![](https://cdn.aipin100.cn/1d2c4c87e14a63a59384e902a5bbc69b) ![](https://cdn.aipin100.cn/1be03d70d6d366405cfe270b1ab2f2c0) 自此,接口終于“保熟”了。 就這么簡單?對,就這么簡單。 已經迫不及待的想要試試嗎?這是官網:https://www.apifox.cn ---- ### 附:常用腳本 #### 斷言 result success check ```javascript pm.test("assert result success: code != 0", function () { var jsonData = pm.response.json(); // console.log(jsonData); ? pm.expect(jsonData.code).to.not.eql(0); }); ``` ---- #### 斷言 result error check ```javascript pm.test("assert result error: code == 0", function () { var jsonData = pm.response.json(); // console.log(jsonData); ? pm.expect(jsonData.code).to.eql(0); }); ``` ---- #### 請求前注入設備id參數 ```javascript var uuid = require("uuid"), btoa = require('btoa'); var queryParams = pm.request.url.query; // var base_url = pm.environment.get('BASE_URL'); // var k = 'device_id:' + btoa(base_url); var k = 'device_id'; var device_id = pm.environment.get(k) || ''; if (device_id === '') { device_id = uuid.v4().split('-').pop() + String(Date.parse(new Date()) / 1000); } // console.log(p, k, device_id); // 設置環境變量 pm.environment.set(k, device_id); // 注入請求參數 queryParams.upsert({ key: 'device_id', value: device_id, }); ``` ---- #### 看云 API 接口導出 最新可用腳本在這里:https://pan.baidu.com/s/1eBzInCsmHuDK4hM7LFNyRQ?pwd=r92p ---- ### 總結 在一個地方,前端、后端、產品、測試 們在一起,用一個工具完成 api 接口的不同階段的開發與測試,并持續地“保熟”上線。一個提升 **coding 幸福感** 的工具,先進團隊,用 [Apifox](https://www.apifox.cn/),不加班。 ---- ### 人生苦短,我愛 DevOps git: 源碼管理、協作開發 spug: CI/CD 自動化 持續集成、持續發布、自動化測試 apifox: API 接口自動化測試 command: 自動化測試 php think Doctor php think Apifox ... socketLog(瀏覽器插件): 實時日志工具 dbAckLog: 應用ORM操作排錯工具 grafana: 應用監測 ?: 日志平臺(提高排故效率) -------- 最終: 干事少,下班早。 bug少,頭發多。 定位快,修復快。 人生苦短,盡可能的自動化。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看