iT邦幫忙

2024 iThome 鐵人賽

0
Python

利用Python完成自動化測試專案系列 第 30

D30 shell script

  • 分享至 

  • xImage
  •  

在過去文章,如果我們要用執行測試後看 allure,只能在跑完測試後手動輸入 allure serve,然後要關掉的時候還要按 Ctrl+C 再輸入Y 確認是否要關掉,多少有點麻煩。而今天要介紹的 shell script 可以讓我們一次執行多行指令,節省重複輸入指令的時間,也可以拿來當 Jenkins 自動執行的腳本。

.sh

shell script 的檔案通常是 xxx.sh 的格式,我們可以把之前在終端輸入的指令放到 shell script 內
,以執行測試後打開報表為例:

echo "test start"
pytest
allure serve report
echo "test end"

這樣一個 shell 檔就成形了。但是我們嘗試在終端執行時會發現跑不動。

shell script 如何執行

要執行 shell script 需要 linux 環境,但我們在過去安裝過的 git 就有執行 shell 的能力。若在安裝 git 是用預設路徑,可以到 C:\Program Files\Git\bin 中,裡面有 sh.exe,可以利用這個執行 sh 檔(或是直接打開 git 的 Git bash 或是在 Windows 安裝 WSL)。

如此一來,在終端輸入

"C:\Program Files\Git\bin/sh.exe" sh_name.sh

若無法執行可以嘗試
& "C:\Program Files\Git\bin/sh.exe" sh_name.sh

就可以執行了,但每次都要輸入 sh.exe 的路徑會過於攏長,我們可以把 bin 的絕對路徑放到 環境變數的 PASH
內,這樣只要輸入 sh.exe sh_name.sh 就可以執行了。

若無法執行可以嘗試重新開機讓環境變數生效。

這樣鐵人賽 30 篇就告一段落了。這次是第一次參加類似的活動,雖然因為疏忽導致在前面就無法完賽,但這 30 篇文章也讓我學到很多,期望明年參賽能夠有好的結果。


上一篇
D29 Jenkins 介紹與安裝
系列文
利用Python完成自動化測試專案30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言