linux上用newman+postman進行自動化測試


第一步:導出postman文件
Postman就是根據 coll ection和enviroment這兩個json文件來自動化運行的!

所以從Postman中導出collection和enviroment文件,上傳到linux主機。

 

第二步:安裝node/npm

linux上安裝node 和npm ,然后才能用npm安裝newman
第三步:安裝newman

newman作用: 命令行模式下執行postman的collection和enviroment文件。

 

安裝命令:sudo npm install -g newman
newman -v 能夠顯示出版本說明安裝成功!

 

如果報錯,類似這種錯誤:
-bash: ./newman: /usr/bin/env: bad interpreter: No such file or directory
這是因為newman這個文件開頭指定的node解釋器位置有誤造成的!

 

解決方法:
1.確認本機的node解釋器位置,如上圖node解釋器的位置已經設置為:/usr/local/bin/node
2.找到linux中newman解釋器目錄,比如筆者的是:/usr/bin/newman
執行: vi /usr/bin/newman,修改文件開頭node解釋器為正確路徑即可!本機node解釋器的目錄:/usr/local/bin/node。
這樣newman命令應該就能用了!

 

第四步:設置定時任務跑Newman

 

4.1 證系統 時間是CST 國內時間
mv /etc/localtime  /etc/localtime.bak
ln -s /usr/share/zoneinfo/Asia/Shanghai  /etc/locaktime
使用上面的兩條命令就可以實現從EDT時間變成CST的時間。

 

4.2修改時區,執行:
export TZ="Asia/Shanghai"
source ~/.bashrc
這樣就為當前用戶配置了中國上海時區

 

4.3添加定時任務,執行: crontab -e

添加下面命令: 

30 15 * * * newman run /home/lkj/postman_collection.json -e /home/lkj/postman_environment.json >> /home/lkj/result.txt;python /home/lkj/sendmail.py;rm -rf /home/lkj/result.txt

命令解釋: 

 30 15 * * *---------------------------------------------表示每天15點30分

 newman run /home/lkj/postman_collection.json----newman run 從postman導出的API文件

 -e /home/lkj/postman_environment.json------------指定API的環境文件

 >> /home/lkj/result.txt;------------------------------將執行結果寫進result.txt文件

python /home/lkj/sendmail.py;-----------------------執行python腳本

rm -rf /home/lkj/result.txt----------------------------刪除result.txt文件

 

4.4重啟crontab服務讓設置生效

分為兩種情況:

1.在系統中有service這個命令時:
這個命令在red hat當中常用,有的linux發行版本中沒有這個命令.
$ service crond start //啟動服務
$ service crond stop //關閉服務
$ service crond restart //重啟服務

 

2.linux發行版本沒有service這個命令時:
/etc/init.d/cron stop
/etc/init.d/cron start

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM