推薦文章

鐵人賽系列文章導讀 — 重啟挑戰:老派軟體工程師的測試修練

2025 年 8 月到 9 月,我參加了 iThome 鐵人賽,花了 30 天寫完「重啟挑戰:老派軟體工程師的測試修練」這個系列。一直沒有在部落格這邊正式介紹過,趁這個機會寫一篇導讀,讓大家在還沒有把 30 篇全部看完也能瞭解裡面在講什麼。

30 天的內容從最基本的「為什麼要寫測試」一路寫到 Testcontainers、.NET Aspire 整合測試、TUnit,每一篇都有技術介紹說明、程式碼範例,以及我自己在專案裡踩過的坑。如果你對 .NET 測試有興趣但不確定要從哪裡開始看,這篇可以幫你省點時間。

另外,完賽之後我把這 30 天的測試知識重新整理成了 29 個 Agent Skills,讓 AI 可以直接拿來用。後續會有一系列文章介紹 `dotnet-testing-agent-skills` 這個專案 — 從 Agent Skills 到 Agent Orchestration 的完整方案。所以這篇鐵人賽導讀也算是後續系列的起點,先從源頭說起。

...繼續閱讀 »
on mrkt

ASP.NET Core 10 微服務可觀測性實戰 - OpenTelemetry + Serilog + Jaeger + Aspire Dashboard

在微服務架構中,一個使用者請求可能跨越多個服務,當問題發生時,如何追蹤這個請求到底經過了哪些服務?每個服務做了什麼事?花了多少時間?這就是「可觀測性(Observability)」要解決的問題。

本篇文章將介紹如何在 ASP.NET Core 10 微服務中整合 OpenTelemetry、Serilog、Jaeger 與 Aspire Dashboard,建立完整的分散式追蹤與結構化日誌方案。

...繼續閱讀 »
on yc421206

開始使用 GitLab 的 Pipline 之前 - 請先證明自己是個人類!

GitLab.com 申請好的帳號與建立第一個專案的 Repo 之後,就可以進行 Pipeline 的使用。

根據 ChatGPT 對 GitLab 中的 Pipeline 其定義是:
在程式碼變動時,自動執行 CI/CD(Continuous Integration / Continuous Delivery)流程。
 

技術一點的說:
當程式碼有異動的時候時,GitLab 會依照 .gitlab-ci.yml 的設定,根據 Pipeline 中所設計的 Stages (階段),如: 建置、測試、部署…等,來自動化的執行一連串 Jobs (工作)。

...繼續閱讀 »
on jamestsai

在 GitLab 建立第一個 Project - 使用 .NET 範本

在使用 GitLab 進行專案管理時,透過範本建立專案可以大幅減少初始化設定的時間。

這篇來介紹一下如何在 GitLab 中使用 .NET 專案範本 (dotnet template) 建立第一個專案,從建立 GitLab Project、套用範本,到完成基本的專案結構與設定。

這樣可以快速建立標準化的 .NET 專案環境,為後續的版本控制與 CI/CD 自動化流程奠定一定程度的基礎。

...繼續閱讀 »
on jamestsai

Azure App Service 搭配 GitHub Actions 部署 ASP.NET Core Web API

Azure App Service 是微軟提供的全託管式 Web 應用程式平台,讓開發者能專注於程式開發,不需要擔心基礎架構的管理。搭配 GitHub Actions,可以實現完全自動化的持續部署流程。這篇文章會介紹如何使用 Azure App Service 部署和管理 Web 應用程式,以及透過 GitHub Actions 實現 CI/CD 自動部署。

...繼續閱讀 »
on yc421206

Pencil:AI 設計工作流實戰指南

在前端開發中,UI/UX 設計是一個不可迴避的環節。傳統的做法是設計師手工繪製 Figma,開發者再根據設計稿實作。但這樣有個問題:溝通成本高、反覆調整多、時程壓力大。我一直在尋找一個更高效的方式,能否讓 AI 幫我快速產生設計元素,然後一鍵整合成完整介面?Pencil 搭配 UI/UX Pro Max Skill 就是這樣的工具。它透過 AI 助手的對話能力,讓你用自然語言描述需求,自動產生設計元素和設計稿。

本文會分享我使用 Pencil 的實務經驗,希望能幫助你建立一個「需求 → 設計 → 開發」的快速迴圈。

...繼續閱讀 »
on yc421206

Playwright 結合 AI 提升測試腳本開發效率

最近在研究 AI 進行 E2E 測試,我選擇 Microsoft 開發的 Playwright。它支援多瀏覽器(Chromium、Firefox、WebKit)、自動等待機制,還有一個很方便的錄製功能,可以直接操作網站產生測試腳本,搭配 Claude、Copilot、Gemini 又可以解省錄製、除厝的時間,本篇會簡單介紹我的使用方式。

...繼續閱讀 »
on yc421206

進修課程