1. 程式人生 > >2018最新精選的Go框架,庫和軟體的精選列表 三

2018最新精選的Go框架,庫和軟體的精選列表 三

測試

用於測試程式碼庫和生成測試資料的庫。

  • 測試框架

    • 斷言 - 基本斷言庫與側面本機測試一起使用,帶有用於自定義斷言的構建塊。
    • badio - Go的testing/iotest包擴充套件。
    • baloo - 簡單而通用的端到端HTTP API測試變得簡單。
    • bro - 在目錄中監視檔案併為它們執行測試。
    • cupaloy - 您的測試框架的簡單快照測試外掛。
    • dbcleaner - 用於測試目的的清理資料庫,受database_cleanerRuby的啟發。
    • dsunit - SQL,NoSQL,結構化檔案的資料儲存區測試。
    • endly - 宣告式端到端功能測試。
    • frisby - REST API測試框架。
    • 銀杏 - Go的BDD測試框架。
    • go-carpet - 檢視終端測試覆蓋範圍的工具。
    • go-mutesting - Go原始碼的變異測試。
    • go-vcr - 記錄並重放您的HTTP互動,以進行快速,確定和準確的測試。
    • 地精 - 摩卡喜歡Go的測試框架。
    • gocheck - 更高階的測試框架替代gotest。
    • GoConvey - 具有Web UI和實時重新載入的BDD風格框架。
    • gocrest - 用於Go斷言的可組合的類似Hamcrest的匹配器。
    • godog - Cucumber或Behat喜歡Go的BDD框架。
    • gofight - Golang路由器框架的API處理程式測試。
    • gogiven - 類似YATSPEC的BDD測試框架。
    • gomega - Rspec就像matcher / assertion庫。
    • GoSpec - Go程式語言的BDD風格測試框架。
    • gospecify - 這提供了用於測試Go程式碼的BDD語法。任何使用過像rspec這樣的庫的人都應該很熟悉。
    • gosuite - testing通過利用Go1.7的Subtests 帶來設定/拆卸設施的輕量級測試套件。
    • Hamcrest - 宣告性Matcher物件的流暢框架,當應用於輸入值時,會生成自描述結果。
    • httpexpect - 簡明,宣告且易於使用的端到端HTTP和REST API測試。
    • restit - Go micro framework幫助編寫RESTful API整合測試。
    • testfixtures - Rails的幫助程式,如測試資料庫應用程式的測試夾具。
    • 作證 - 對標準測試包的神聖擴充套件。
    • wstest - 用於對websocket http.Handler進行單元測試的Websocket客戶端。
  • 嘲笑

    • counterfeiter - 用於生成自包含模擬物件的工具。
    • go-sqlmock - 用於測試資料庫互動的Mock SQL驅動程式。
    • go-txdb - 基於單個事務的資料庫驅動程式主要用於測試目的。
    • gock - 多才多藝的HTTP 模擬很容易。
    • gomock - Go程式語言的模擬框架。
    • govcr - Golang的 HTTP模擬:記錄和重放用於離線測試的HTTP互動。
    • minimock - 用於Go介面的模擬生成器。
    • mockhttp - Go http.ResponseWriter的模擬物件。
  • 模糊測試和增量除錯/縮減/縮小。

    • go-fuzz - 隨機測試系統。
    • gofuzz - 用於使用隨機值填充go物件的庫。
    • Tavor - 通用模糊測試和增量除錯框架。
  • Selenium和瀏覽器控制工具。

    • cdp - 適用於Chrome除錯協議的型別安全繫結,可與瀏覽器或實現它的其他除錯目標一起使用。
    • chromedp - 驅動/測試Chrome,Safari,Edge,Android Webviews以及支援Chrome除錯協議的其他瀏覽器的方法。
    • ggr - 路由和代理Selenium Wedriver請求多個Selenium集線器的輕量級伺服器。
    • selenoid - 在容器中啟動瀏覽器的備用Selenium中心伺服器。

文書處理

用於解析和操作文字的庫。

  • 具體格式
    • align - 一個對齊文字的通用應用程式。
    • allot - CLI工具和漫遊器的佔位符和萬用字元文字解析。
    • bbConvert - 將bbCode轉換為HTML,允許您新增對自定義bbCode標記的支援。
    • blackfriday - Go中的Markdown處理器。
    • bluemonday - HTML Sanitizer。
    • colly - Gophers的快速優雅的刮痧框架
    • doi - Go中的文件物件識別符號(doi)解析器。
    • editorconfig-core-go - Go的Editorconfig檔案解析器和操作器。
    • enca - libenca的最小cgo繫結。
    • genex - 計算並將正則表示式擴充套件為所有匹配的字串。
    • github_flavored_markdown - GitHub Flavored Markdown渲染器(使用blackfriday),帶有圍欄程式碼塊高亮顯示,可點選的標題錨鏈接。
    • go-fixedwidth - 固定寬度文字格式(帶反射的編碼器/解碼器)。
    • go-humanize - 將時間,數字和記憶體大小格式化為人類可讀格式。
    • go-nmea - Go語言的NMEA解析器庫。
    • go-runewidth - 獲取字元或字串固定寬度的函式。
    • go-slugify - 使用多種語言支援製作相當的slug。
    • go-vcard - 解析並格式化vCard。
    • gofeed - 在Go中解析RSS和Atom提要。
    • gographviz - 解析Graphviz DOT語言。
    • gommon / bytes - 將位元組格式化為字串。
    • gonameparts - 將人名解析為個別名稱部分。
    • goq - 使用帶有jQuery語法的struct標籤宣告解組HTML(使用GoQuery)。
    • GoQuery - GoQuery為Go語言帶來了類似於jQuery的語法和一組功能。
    • goregen - 用於從正則表示式生成隨機字串的庫。
    • gotext - Go的GNU gettext實用程式。
    • guesslanguage - 確定unicode文字的自然語言的函式。
    • 注入 - 包注入提供基於反射的注射器。
    • mxj - 將XML編碼/解碼為JSON或map [string] interface {}; 使用點符號路徑和萬用字元提取值。替換x2j和j2x包。
    • sh - Shell解析器和格式化程式。
    • slug - 具有多種語言支援的URL友好的slugify。
    • Slugify - Go slugify應用程式處理字串。
    • toml - TOML配置格式(帶反射的編碼器/解碼器)。
  • 效用
    • gotabulate - 使用Go輕鬆漂亮地打印表格資料。
    • kace - 涵蓋常見初始主義的常見案例轉換。
    • parseargs-go - 理解引號和反斜槓的字串引數解析器。
    • parth - URL路徑分段解析。
    • 基數 - 快速字串排序演算法。
    • xj2go - 將xml或json轉換為struct。
    • xurls - 從文字中提取網址。

第三方API

用於訪問第三方API的庫。

公用事業

一般實用工具和工具,讓您的生活更輕鬆。

  • abutil - 經常使用的Golang助手的集合。
  • apm - 使用HTTP API的Golang應用程式的程序管理器。
  • backscanner - 類似於bufio.Scanner的掃描程式,但它以相反的順序讀取和返回行,從給定位置開始並向後移動。
  • boilr - 用於從樣板模板建立專案的超快CLI工具。
  • chyle - 使用具有多種配置可能性的git儲存庫的Changelog生成器。
  • circuit - 一種高效且功能齊全的Hystrix,就像斷路器模式的Go實現一樣。
  • 斷路器 -斷路器在Go。
  • clockwerk - 使用簡單流暢的語法來打包以安排定期作業。
  • command - 帶執行緒安全序列和並行排程程式的Go的命令模式。
  • coop - Go中一些常見併發流的備忘單。
  • copy-pasta - 通用多工作站剪貼簿,使用S3作為後端進行儲存。
  • ctop - 容器指標的類似頂部的介面(例如htop)。
  • 死亡 - 通過訊號管理應用程式關閉。
  • Deepcopier - Go的簡單結構複製。
  • 鑽研 - 去偵錯程式。
  • dlog - 編譯時控制的記錄器,可在不刪除除錯呼叫的情況下縮小版本。
  • ergo - 簡化了在不同埠上執行的多個本地服務的管理。
  • 評估者 - 基於s表示式動態評估表示式。它簡單易用。
  • excelize - 用於讀取和編寫Microsoft Excel™(XLSX)檔案的Golang庫。
  • fastlz - 為GoLang包裝FastLz(免費,開源,行動式實時壓縮庫)。
  • filetype - 用於推斷檢查幻數簽名的檔案型別的小包。
  • 填充 - 使用“填充”標記填充結構的小實用程式。
  • fzf - 用Go編寫的命令列模糊查詢器。
  • generate - 執行在指定的路徑或環境變數上遞迴生成,並可以通過正則表示式進行過濾。
  • 紳士 - 全功能的外掛驅動的HTTP客戶端庫。
  • git-time-metric - 簡單,無縫,輕量級的Git時間跟蹤。
  • GJSON - 使用一行程式碼獲取JSON值。
  • go-astitodo - 在你的GO程式碼中解析TODO
  • go-bind-plugin - go:生成用於包裝由golang外掛匯出的符號的工具(僅限1.8)。
  • go-cron - 用於go的簡單Cron庫,可以在不同的時間間隔執行閉包或函式,從特定日期和時間的每秒一次到每年一次。主要用於Web應用程式和長時間執行的守護程序。
  • go-debug - Golang庫和應用程式的條件除錯日誌記錄。
  • - 幹(不要重複自己)Go包。
  • go-funk - Modern Go實用程式庫,提供幫助程式(map,find,contains,filter,chunk,reverse,...)。
  • go-httpheader - 用於將結構編碼到Header欄位的庫。
  • go-rate - Go的定時速率限制器。
  • go-respond - 用於處理常見HTTP JSON響應的Go包。
  • go-sitemap-generator - 用Go編寫的XML Sitemap生成器。
  • go-torch - Go程式的隨機火焰圖分析器。
  • go-trigger - Go-lang全域性事件觸發器,使用id註冊事件並從專案的任何位置觸發事件。
  • go-underscore - 有用的Go功能集合實用程式的有用集合。
  • goback - 轉到簡單的指數退避包。
  • godaemon - 寫守護程序的實用程式。
  • godropbox - 用於從Dropbox編寫Go服務/應用程式的通用庫。
  • gohper - 各種工具/模組有助於開發。
  • gojq - Golang中的 JSON查詢。
  • gojson - 從示例JSON自動生成Go(golang)結構定義。
  • golarm - 帶系統事件的火警。
  • golog - 簡單輕便的CLI工具,可以跟蹤您的任務。
  • gopencils - 小而簡單的包,可以輕鬆使用REST API。
  • goplaceholder - 一個用於生成佔位符影象的小golang lib。
  • goreleaser - 儘可能快速,輕鬆地傳送Go二進位制檔案。
  • goreporter - Golang工具,可進行靜態分析,單元測試,程式碼審查和生成程式碼質量報告。
  • goreq - Go語言的最小簡單請求庫。
  • goreq - 基於gorequest的增強型簡化HTTP客戶端。
  • gorequest - 簡化的HTTP客戶端,具有豐富的Go功能。
  • goseaweedfs - 具有幾乎全部功能的SeaweedFS客戶端庫。
  • gotenv -負載環境變數的.env或任何io.Reader在Go。
  • goxlsxwriter - 用於編寫XLSX(Microsoft Excel)檔案的libxlsxwriter的 Golang繫結。
  • gpath - 用反射中的Go表示式簡化訪問結構欄位的庫。
  • grequests - 優雅而簡單的net/http包裝器,遵循Python的請求庫。
  • gron - 使用簡單的Go API定義基於時間的任務,Gron的排程程式將相應地執行它們。
  • htcat - 並行和流水線HTTP GET實用程式。
  • httpcontrol - 包httpcontrol允許圍繞超時和重試進行HTTP傳輸級別控制。
  • hub - 包含git命令,具有與終端中的github互動的附加功能。
  • hystrix-go - 實現程式設計師定義的回退(即斷路器)的Hystrix模式。
  • 不朽 - * nix跨平臺(OS不可知)主管。
  • 內在 - 使用x86 SIMD而無需編寫任何彙編程式碼。
  • JobRunner - 智慧且功能強大的cron作業排程程式,內建作業排隊和實時監控功能。
  • jsonapi-errors - 基於JSON API錯誤引用轉到繫結。
  • jsonf - 用於突出顯示格式和結構查詢獲取JSON的控制檯工具。
  • jsongo - Fluent API,可以更輕鬆地建立Json物件。
  • jsonhal - Simple Go包使自定義結構編組為HAL相容的JSON響應。
  • kazaam - 用於任意轉換JSON文件的API。
  • lrserver - Go的LiveReload伺服器。
  • mc - Minio Client提供了與Amazon S3相容的雲端儲存和檔案系統一起使用的最少工具。
  • mergo - Helper在Golang合併結構和地圖。用於配置預設值,避免凌亂的if語句。
  • minify - HTML,CSS,JS,XML,JSON和SVG檔案格式的快速縮小器
  • minquery - 支援高效分頁的MongoDB / mgo.v2查詢(遊標繼續列出我們中斷的文件)。
  • mmake - 現代製作。
  • moldova - 基於輸入模板生成隨機資料的實用程式。
  • mp - 簡單的cli電子郵件解析器。它目前需要stdin並輸出JSON。
  • mssqlx - 資料庫客戶端庫,任何主從屬的代理,主主結構。輕量化和自動平衡。
  • multitick - 用於對齊程式碼的多路複用器。
  • myhttp - 使用超時支援發出HTTP GET請求的簡單API。
  • netbug - 輕鬆遠端分析您的服務。
  • ngrok - 對localhost的內省隧道。
  • okrun - 去執行錯誤壓路機。
  • onecache - 支援多個後端儲存的快取庫(Redis,Memcached,檔案系統等)。
  • panicparse - 對類似的goroutines進行分組並著色堆疊轉儲。
  • peco - 簡單的互動式過濾工具。
  • pester - 使用重試,退避和併發進行HTTP客戶端呼叫。
  • pm - 使用HTTP API的程序(即goroutine)管理器。
  • profile - Go的簡單效能分析支援包。
  • rclient - REST API的可讀,靈活,易用的客戶端。
  • 實現 - 使用檔案監視器和實時重新載入構建系統。使用自定義路徑執行,構建和檢視檔案更改。
  • 重複 - 實施不同的退避策略,可用於重試操作和心跳。
  • 請求 - 針對Humans™ 傳送 HTTP請求。
  • rerate - 基於Redis的速率計數器和Go的速率限制器。
  • 重新執行 - 在源更改時重新編譯並重新執行應用程式。
  • resty - 受Ruby rest-client啟發的Go的簡單HTTP和REST客戶端。
  • 重試 - 基於上下文的功能機制,重複執行操作直到成功。
  • retry-go - 對於golang來說,重試變得簡單易行。
  • 強大 - 執行彈性,捕獲並重啟恐慌。
  • rq - golang stdlib HTTP客戶端的一個更好的介面。
  • 排程程式 - Cronjobs排程變得簡單。
  • sling - 用於API客戶端的HTTP請求構建器。
  • spinner - Go包可以輕鬆地為終端微調器提供選項。
  • sqlx - 在優秀的內建資料庫/ sql包之上提供了一組擴充套件。
  • Storm - BoltDB簡單而強大的工具包。
  • 結構 - 實現操作結構的簡單函式。
  • 任務 - 簡單的“製造”替代方案。
  • 工具箱 - 切片,地圖,多圖,結構,功能,資料轉換實用程式。服務路由器,巨集評估器,標記器。
  • ugo - ugo是一個切片工具箱,帶有簡潔的Go語法。
  • UNIS - Go中字串實用程式的通用架構™。
  • usql - usql是SQL資料庫的通用命令列介面。
  • util - 有用的實用程式函式的集合。(字串,併發,操作,......)。
  • wuzz - 用於HTTP檢查的互動式cli工具。
  • xferspdy - Xferspdy在golang中提供二進位制diff和補丁庫。
  • xlsx - 用於簡化讀取Go程式中最近版本的Microsoft Excel使用的XML格式的庫。

驗證

用於驗證的庫。

  • govalidator - 字串,數字,切片和結構的驗證器和消毒器。
  • govalidator - 使用簡單的規則驗證Golang請求資料。受到Laravel的請求驗證的啟發。
  • ozzo-validation - 支援使用通常的程式碼構造中指定的可配置和可擴充套件的驗證規則來驗證各種資料型別(結構,字串,對映,切片等),而不是結構標記。
  • validate - 此包提供了為Go應用程式編寫驗證的框架。
  • 驗證器 - 進行結構和場驗證,包括交叉場,交叉結構,地圖,切片和陣列潛水。

版本控制

用於版本控制的庫。

  • gh - GitHub Webhooks的可編寫指令碼的伺服器和net / http中介軟體。
  • git2go - 為libgit2繫結繫結。
  • go-vcs - 在Go中操作和檢查VCS儲存庫。
  • hgo - Hgo是Go包的集合,提供對本地Mercurial儲存庫的讀訪問。

視訊

用於操縱視訊的庫。

  • gmf - 為FFmpeg av *庫繫結繫結。
  • go-astisub - 操縱GO中的字幕(.srt,.stl,.ttml,.webvtt,.ssa / .ass,teletext,.smi等)。
  • go-astits - 在GO中本地解析和解複用MPEG傳輸流(.ts)。
  • goav - FFmpeg的Comphrensive Go繫結。
  • gst - GStreamer的繫結。
  • libgosubs - go的字幕格式支援。支援.srt,.ttml和.ass。
  • v4l - 用Go編寫的Linux視訊捕獲庫。



作者:承諾一時的華麗
連結:https://www.jianshu.com/p/b2e1498d3b97
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。