欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關于golang test緩存問題

 更新時間:2022年09月09日 14:51:50   作者:熊貓實驗室  
這篇文章主要介紹了關于golang test緩存問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

在使用vscode進行debug golang 時,出現(xiàn)test結(jié)果緩存的情況
導致若干次test結(jié)果一致問題
設置go test不用緩存
官方說明
https://pkg.go.dev/cmd/go#hdr-Test_packages
設置:
找到設置

找到test設置

添加"-count=1"

再進行run test就可以了

補充:下面再次介紹下go test 緩存

在執(zhí)行g(shù)o test的時候發(fā)現(xiàn), 每次執(zhí)行時間竟然一致, 然后發(fā)現(xiàn)是go test又緩存

Go test 支持兩種模式:

1.Local directory mode, 在調(diào)用 go test 時,沒有加參數(shù) (比如 go test 或 go test -v)。在這種模式下,緩存會被禁用。 會編譯當前目錄下的代碼和測試,然后運行測試二進制程序。

2.Package list mode,執(zhí)行 go test時,指定文件路徑 (比如 go test math, go test ./...)。在這種模式下,會編譯并測試路徑列出的每個測試文件。go test 會緩存成功的測試結(jié)果,以避免不必要的重復運行測試。當再次執(zhí)行測試時,會檢查緩存中對應的測試結(jié)果是否 OK, 如果 OK 會重新顯示之前的輸出,而不會運行測試二進制文件。此時 go test 會打印 '(cached)' 標識。
回過頭來再看下項目的測試腳本:

CGO_ENABLED=1 go test -v --mod=vendor ./pkg/...

運行在 Package list mode, 所以單測通過后的二次測試, 會走 cache。

解決方案

有以下三種方式, 在測試中禁用緩存:

1.執(zhí)行 go test 添加 --count=1 參數(shù)(推薦,效率高),以上面????例子:

CGO_ENABLED=1 go test -v --count=1 --mod=vendor ./pkg/...

2.Go 官方提供 clean工具,來刪除對象文件和緩存文件, 不過這種方式相對麻煩:

go clean -testcache // Delete all cached test results

3.設置 GOCACHE 環(huán)境變量。GOCACHE 指定了 go 命令執(zhí)行時緩存的路徑,以便之后被復用。 設置 GOCACHE=off 即可禁用緩存。(go 1.12 之后,不能將其設置為off)

到此這篇關于golang test緩存問題的文章就介紹到這了,更多相關golang test緩存內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • CMD下執(zhí)行Go出現(xiàn)中文亂碼的解決方法

    CMD下執(zhí)行Go出現(xiàn)中文亂碼的解決方法

    需要在Go寫的服務里面調(diào)用命令行或者批處理,并根據(jù)返回的結(jié)果做處理。但是windows下面用cmd返回中文會出現(xiàn)亂碼,本文就詳細的介紹一下解決方法,感興趣的可以了解一下
    2021-12-12
  • golang切片原理詳細解析

    golang切片原理詳細解析

    這篇文章主要介紹了golang切片原理詳細解析,切片在編譯時定義為Slice結(jié)構(gòu)體,并通過NewSlice()函數(shù)進行創(chuàng)建,更多相關內(nèi)容感興趣的小伙伴可以參考一下下面文章內(nèi)容
    2022-06-06
  • Golang在Mac、Linux、Windows下如何交叉編譯的實現(xiàn)

    Golang在Mac、Linux、Windows下如何交叉編譯的實現(xiàn)

    這篇文章主要介紹了Golang在Mac、Linux、Windows下如何交叉編譯的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • Go語言中的指針運算實例分析

    Go語言中的指針運算實例分析

    這篇文章主要介紹了Go語言中的指針運算技巧,實例分析了Go語言指針運算的實現(xiàn)方法,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-02-02
  • goland使用go mod模式的步驟詳解

    goland使用go mod模式的步驟詳解

    這篇文章主要介紹了goland使用go mod模式的步驟詳解,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • go依賴注入庫samber/do使用示例講解

    go依賴注入庫samber/do使用示例講解

    這篇文章主要介紹了go依賴注入庫samber/do使用,在本文中,我們學習了如何使用samber/do在?Go?中提供依賴注入,需要的朋友可以參考下
    2024-02-02
  • Golang指針隱式間接引用詳解

    Golang指針隱式間接引用詳解

    在 Go中,指針隱式解引用是指通過指針直接訪問指針所指向的值,而不需要顯式地使用 * 運算符來解引用指針,這篇文章主要介紹了Golang指針隱式間接引用,需要的朋友可以參考下
    2023-05-05
  • go?tool?pprof?參數(shù)?'-base'?和?'-diff_base'之間的區(qū)別解析

    go?tool?pprof?參數(shù)?'-base'?和?'-diff_base&

    這篇文章主要介紹了go?tool?pprof?參數(shù)?'-base'?和?'-diff_base'之間的區(qū)別,兩個參數(shù)都是用于計算當前?profile文件減去基準profile文件所獲得的差值,用這個差值生成一個新的profile文件,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2023-05-05
  • vscode配置go開發(fā)環(huán)境的實戰(zhàn)過程

    vscode配置go開發(fā)環(huán)境的實戰(zhàn)過程

    vscode配置go的開發(fā)環(huán)境很簡單,下面這篇文章主要給大家介紹了關于vscode配置go開發(fā)環(huán)境的實戰(zhàn)過程,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-06-06
  • Go語言method詳解

    Go語言method詳解

    這篇文章主要介紹了Go語言method詳解,本文總結(jié)了在使用method的時候重要注意幾點、指針作為receiver、method繼承等內(nèi)容,需要的朋友可以參考下
    2014-10-10

最新評論