<th id="uz6zr"><table id="uz6zr"><sub id="uz6zr"></sub></table></th> <tbody id="uz6zr"></tbody>
  • <menuitem id="uz6zr"><dfn id="uz6zr"></dfn></menuitem><menuitem id="uz6zr"><strong id="uz6zr"></strong></menuitem>
      1. 淺談接口測試(四)初步認識postman

        發表于:2020-10-21 10:36  作者:繭城寒舍   來源:簡書

        字體: | 上一篇 | 下一篇 |我要投稿 | 推薦標簽: Postman

          我們如果在命令行發送post請求,會很麻煩,效率不高。同時也不方便接口的管理,所以一些優秀的接口測試工具應運而出,postman就是繞不開的話題之一
          1. 主要功能
          postman主要幫我們干了三件事:
          把相關集合放到一個集合當中方便管理
          對指定接口發送請求
          下面我們使用postman工具操作getList接口:
          新建一個集合TestDemo,用來管理相關用例
          添加一條請求(addRequest)
          編輯請求,修改url,請求方式和參數
          發送請求查看結果
          以上步驟,是postman的主要功能,也是我們前三個小節一直叨念的部分,只不過通過postman來完成,下面是前面沒有講到過的東西----斷言
          斷言
          按照截圖打開斷言區域:
          我們按照用例來設置斷言:
          設計用例(功能):
          是否按照創建時間倒序排列
          是否返回指定的條數
        pm.test("是否含有create_time節點", function () {
            pm.expect(pm.response.text()).to.include("create_time");
        });

        pm.test("返回2條數據", function () {
            var jsonData = pm.response.json();
            var num = jsonData.result.length;
            pm.expect(num).to.eql(2);
        });

        pm.test("時間倒序排列", function () {
            var jsonData = pm.response.json();
            var time1 = jsonData.result[0].create_time;
            var time2 = jsonData.result[1].create_time;
            pm.expect(time2).to.be.below(time1);

        });
          發送請求后,店家Test Results查看結果如下:
          紅色的提示表示斷言失敗,這個時候我們需要修改接口代碼(getList_fix.php):
        <?php

        // 告訴瀏覽器返回為json類型
        header('Content-Type:application/json; charset=utf-8');


        // 獲取參數
        $page = $_GET['page'];
        $size = $_GET['size'];


        /**
         * 在真正的開發過程中,會操作數據庫,我們暫時用一個多維數組代替
         */
        $data_list = array(
            array('id'=>1,'name'=>'成龍','create_time'=>1587890857000),
            array('id'=>2,'name'=>'周潤發','create_time'=>1587804457000),
            array('id'=>3,'name'=>'周星馳','create_time'=>1587690857000),
            array('id'=>4,'name'=>'李連杰','create_time'=>1587590857000),
            array('id'=>5,'name'=>'梁朝偉','create_time'=>1587490857000),
            array('id'=>6,'name'=>'張曼玉','create_time'=>1587390857000),
            array('id'=>7,'name'=>'惠英紅','create_time'=>1587290857000),
            array('id'=>8,'name'=>'林青霞','create_time'=>1587190857000),
            array('id'=>9,'name'=>'王祖賢','create_time'=>1587090857000),
            array('id'=>10,'name'=>'鞏俐','create_time'=>1586890857000)
        );

        foreach($data_list as $key=>$value){

            if($key >= ($page -1) * $size &&  $key < $page * $size){
                $temp[] = $value;
            }
        }


        // 組織的數據
        $data = array(
            'code' => 200,
            'msg' => '請求成功',
            'result' => $temp

        );

        // PHP數組轉json
        $rst = json_encode($data,JSON_UNESCAPED_UNICODE);

        // 打印結果
        echo $rst;
          按照上面的流程,創建一個請求,添加斷言,在此訪問返回結果如下:
          返回綠色說明測試通過
          穩重的斷言代碼是由js編寫,大家書寫斷言的時候不要被代碼嚇到,因為postman已經提供了比較豐富的斷言片段,直接點擊即可生成。

          本文內容不用于商業目的,如涉及知識產權問題,請權利人聯系51Testing小編(021-64471599-8017),我們將立即處理。

        評 論

        論壇新帖

        頂部 底部


        建議使用IE 6.0以上瀏覽器,800×600以上分辨率,法律顧問:上海瀛東律師事務所 張楠律師
        版權所有 上海博為峰軟件技術股份有限公司 Copyright©51testing.com 2003-2020, 滬ICP備05003035號
        投訴及意見反饋:webmaster@51testing.com; 業務聯系:service@51testing.com 021-64471599-8017

        滬公網安備 31010102002173號

        51Testing官方微信

        51Testing官方微博

        掃一掃 測試知識全知道

        在线看黄AV免费悠久