一、使用 GIT 的 Bisect 指令的背景
在系統開發的過程中,難免在無意間製造 bug,但在發現系統有問題之後,該怎麼樣快速的找到產生問題的原始碼,這就是另外一門學問了。
現在開發者通常使用 GIT 作為版本控制工具,而 GIT 可以怎麼樣提供開發者快速找到問題呢?大家可以參考 GIT 的 bisect 這個指令。以下提供一個在 PHP 開發的環境下,使用 Bisect 的案例來供大家參考。
01 - 活動紀錄
- 活動方:iThome - DevOpsDays Taipei 2021
- 名稱:Advanced GitLab CI Workshop
- 活動網站:Advanced GitLab CI Workshop - DevOpsDays 2021
GitLab CI 對於入門者相當的友善,但由於版本變化快速,一段時間沒關注,可能就會錯過 GitLab 在 gitlab-ci.yml 上新的或更方便的特性,如 GitLab CI 的平行處理、平行處理矩陣、繼承、參考等等的用法,在這場 Workshop 中,將帶給參加者認識進階的 GitLab CI 使用及一些除錯、降低 GitLab 執行時間的小技巧。
蒐集個人覺得有幫助的文章及連結甚至是小範例。本次內容包含:DevOps、PHP、設計、生活及工具。
以上影片取自 n8n.io - Free and Open Workflow Automation Tool 的介紹,n8n 是近期發現超好用的自動化工具。
蒐集個人覺得有幫助的文章及連結甚至是小範例。本次內容包含:GitLab、Git、軟體開發、網站開發等內容。
圖片取自:🦊GitLab Cheatsheet - 1 - Basics of Stages and Jobs - DEV Community
蒐集個人覺得有幫助的文章及連結甚至是小範例。本次內容包含:PHP、Laravel、DevOps、GitLab、軟體工程等內容。
本次選圖取自:GitLab CI CD Note
2022.06.30 Update
於GitLab CI/CD 手冊上發現 artifacts:reports:cobertura
在 GitLab 15.0 中移除,替換為 artifacts:reports:coverage_report
,因此更新底下內容。
2021.06.14 Update
在上一篇 在 Pipeline 檢視 PHPUnit 單元測試報告,透過 artifacts:reports:junit
的機制,使每次 Pipeline 執行後,就能馬上看到單元測試報告,有了測試報告之後,可能就會開始思考,那 Code Coverage 測試代碼覆蓋的狀況,是不是也可以在 Merge Request 的過程中就看到呢?
答案是可以的,而且在 GitLab CI/CD 的免費版本中就有這個功能。在 GitLab 12.9 版後,只需要透過 artifacts:reports:coverage_report
並作相關設定,就可以搜集 Cobertura XML 格式的報表就可以完成。這部分與 artifacts:reports:junit
的原理是一樣的,只需要讓 Pipeline 的工作可以產出所需要的格式的檔案,透過 artifacts:reports:coverage_report
將檔案搜集起來,就可以在 Merge Request 的畫面中看到視覺化的測試代碼覆蓋情況。
那麼,在 PHP 該怎麼做出符合Cobertura XML格式的測試程式碼覆蓋狀況檔案呢?
当前网速较慢或者你使用的浏览器不支持博客特定功能,请尝试刷新或换用Chrome、Firefox等现代浏览器