<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Macaroon反向代理測試套件

          聯(lián)合創(chuàng)作 · 2023-10-01 18:04

          Macaroon 是一個高效的反向代理測試套件,測試框架本身基于python2.7開發(fā),方便跨平臺移植;測試?yán)褂酶袷交枋?,做到編程語言無關(guān)性。使用 Macaroon能夠簡便快捷的完成測試場景的構(gòu)造、線上失效案例的重建及被測軟件(DUT)的功能、模塊、協(xié)議一致性測試等。

          安裝及使用

          社區(qū)公共測試平臺地址:

          目前公共測試環(huán)境已經(jīng)搭建配置完成,測試用戶名:Tester;
          登錄qa1機(jī)器:ssh -l Tester -p 22292 qa1.zymlinux.net, /home/Macaroon安裝有Macaroon;
          登錄qa2機(jī)器:ssh -l Tester -p 22293 qa2.zymlinux.net,安裝有ts、squid等方向代理軟件;
          如有需要,請聯(lián)系宗儀(QQ:624740707)或懷財(QQ:262765996)添加長期用戶權(quán)限;

          自行安裝及使用:

          i. 硬件準(zhǔn)備:

          兩臺機(jī)器A和B,A機(jī)器執(zhí)行測試并同時作為client端與server端,B機(jī)器安裝被測軟件DUT--例如TrafficServer(Proxy).

          ii.軟件準(zhǔn)備:

          執(zhí)行install.sh文件
          Client&Server:
             Linux
             Python2.7
             PyYaml包
             Macaroon
             git
          
          DUT( Device Under Testing) :
             被測軟件(proxy or cache, 如TrafficServer, Swift等)
             Bind

          iii. 配置DUT:

          使從A機(jī)器client端發(fā)出的http請求能夠通過DUT(proxy)后正確到達(dá)A機(jī)器server端 ----- *重要   
          例如: 在proxy上安裝bind, 修改named的相關(guān)配置信息,使得named中存在一個域名可以指向A機(jī)器(Client的IP),使用dig <域名>確認(rèn)是否成功.

          iv. 修改config文件:

          在macaroon目錄下, 找到config.py文件,將_server的內(nèi)容修改為proxy的ip或者h(yuǎn)ostname.   
          _port修改為proxy提供的對外服務(wù)的端口, 例如:默認(rèn)為80.     
          將DUT_Strart, DUT_Stop和DUT_Clean分別修改為proxy對應(yīng)的啟動, 停止和清理緩存命令.

          v.  將macaroon目錄下的agentsever.py 拷貝至proxy機(jī)器,并使用sudo權(quán)限執(zhí)行:

          sudo python agentserver.py

          vi. 環(huán)境驗(yàn)證:

          在client端執(zhí)行httpmockserver.py:python httpmockserver.py   
          在proxy端執(zhí)行curl命令,驗(yàn)證proxy到client的request是否可達(dá):
          curl http://<proxyip>:<port>/ -H "Host:XXX:[port]"

          更多問題參見:doc/Q&A

          框架及case設(shè)計

          參見doc/Case_Design

          如何運(yùn)行用例

          i. 運(yùn)行單個case

           在根目錄下執(zhí)行如下命令: sh runcase.sh case文件

          ii. 運(yùn)行多個case

          在根目錄下執(zhí)行如下命令:python runner.py -p your-case-path -s your-email    
          詳見:python runner.py -h

          查看case輸出及日志

          i. 執(zhí)行和調(diào)試單個測試?yán)?/p>

          sh runcase.sh <case文件>, case執(zhí)行日志屏幕輸出

          ii. 執(zhí)行多個case

          執(zhí)行日志輸出至日志文件,./log/record_XXXX.log,按時間排序

          如何編寫你的用例

          i.  case/下創(chuàng)建your case dir

          ii. 拷貝case模板example/case_template_example.yaml至your case dir,并重命名

          iii.編輯該文件

             a. 文件頭部添加case相關(guān)說明     
             b. 填寫case步驟并準(zhǔn)備對應(yīng)步驟的數(shù)據(jù)塊    
             c. 填充和完善每步的數(shù)據(jù),如request header, response header, response body, 需要檢查的header等    
             d. 保存和調(diào)試用例

          更多信息

          參見./doc/文檔


          瀏覽 26
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  成人日日夜夜av 成人三级电影久久 | 在线观看AA片 | 美女扒开粉嫩尿囗给男生桶 | 狠狠色狠狠爱 | 久久精品先锋资源 |