亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

著色 golang 測試運行輸出

著色 golang 測試運行輸出

Go
郎朗坤 2021-09-09 15:00:43
當終端/控制臺測試運行實際以紅色或綠色文本顯示其輸出時,我喜歡它。似乎很多可用于 Go 的測試庫都有這個。但是,我只想使用 Go 附帶的默認測試包。有沒有辦法用紅色和綠色對它的輸出進行著色?
查看完整描述

3 回答

?
慕姐4208626

TA貢獻1852條經驗 獲得超7個贊

您可以使用通用著色器grc對任何內容進行著色。


在 Debian/Ubuntu 上,使用apt-get install grc. 在帶有 , 的 Mac 上brew install grc。


在您的主目錄中創建一個 config 目錄:


mkdir ~/.grc

然后在以下位置創建您的個人 grc 配置~/.grc/grc.conf:


# Go

\bgo.* test\b

conf.gotest

然后在 中創建一個 Go 測試著色配置~/.grc/conf.gotest,例如:


regexp==== RUN .*

colour=blue

-

regexp=--- PASS: .*

colour=green

-

regexp=^PASS$

colour=green

-

regexp=^(ok|\?) .*

colour=magenta

-

regexp=--- FAIL: .*

colour=red

-

regexp=[^\s]+\.go(:\d+)?

colour=cyan

現在您可以使用以下命令運行 Go 測試:


grc go test -v ./..

示例輸出:

http://img1.sycdn.imooc.com//6139b1400001d05622990903.jpg

為了避免打字grc的時候,添加一個別名到你的shell(如果使用bash,無論是~/.bashrc~/.bash_profile或兩者兼而有之,這取決于您的操作系統):

alias go=grc go

現在您只需運行以下命令即可獲得著色:

go test -v ./..


查看完整回答
反對 回復 2021-09-09
?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

您可以為此創建一個包裝器 shell 腳本并使用顏色轉義序列為其著色。這是 Linux 上的一個簡單示例(我不確定它在 Windows 上的外觀,但我想有一種方法.. :))

go test -v . | sed ''/PASS/s//$(printf "\033[32mPASS\033[0m")/'' | sed ''/FAIL/s//$(printf "\033[31mFAIL\033[0m")/''


查看完整回答
反對 回復 2021-09-09
  • 3 回答
  • 0 關注
  • 217 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號