Skip to main content

dotnet-testing-advanced

.NET 進階測試技能的導航入口。當使用者詢問整合測試、API 測試、Testcontainers、Aspire 測試、測試框架遷移(xUnit v3、TUnit)等進階需求,或不確定該載入哪個 dotnet-testing-advanced 子技能時使用,依需求引導至對應的進階子技能。

ソース情報

リポジトリ
kevintsengtw/dotnet-testing-agent-skills
ソースの最終更新活動
2026年9月30日 04:15
検出された SKILL.md の言語
中国語
スター
29
フォーク
4

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

ファイルエクスプローラー
6 ファイル

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
dotnet-testing-advanced
description
.NET 進階測試技能的導航入口。當使用者詢問整合測試、API 測試、Testcontainers、Aspire 測試、測試框架遷移(xUnit v3、TUnit)等進階需求,或不確定該載入哪個 dotnet-testing-advanced 子技能時使用,依需求引導至對應的進階子技能。
# .NET 進階測試技能總覽 本檔案是「進階測試導航中心」,幫助找到正確的進階子技能。進階測試涉及容器管理、WebApplicationFactory 設定等複雜細節,子技能包含完整的設定指引和常見問題排解,載入正確的子技能能確保使用者獲得完整指引。 根據使用者需求匹配對應的進階子技能,使用 Skill tool 載入,讓子技能提供專業的整合測試指引。 --- ## 快速技能對照表 **使用者提到的關鍵字 → 應載入的進階子技能** ### 整合測試技能 | 使用者說... | 載入指令 | 用途說明 | |------------|----------|----------| | **API 測試**、Controller 測試、端點測試 | `/skill dotnet-testing-advanced-aspnet-integration-testing` | 基礎 API 整合測試 | | **完整 CRUD**、WebAPI 測試、業務流程測試 | `/skill dotnet-testing-advanced-webapi-integration-testing` | 完整 API 流程測試 | | **WebApplicationFactory**、TestServer | `/skill dotnet-testing-advanced-aspnet-integration-testing` | WebApplicationFactory 使用 | ### 容器化測試技能 | 使用者說... | 載入指令 | 用途說明 | |------------|----------|----------| | **SQL Server 容器**、PostgreSQL、MySQL | `/skill dotnet-testing-advanced-testcontainers-database` | 關聯式資料庫容器測試 | | **MongoDB**、Redis、Elasticsearch | `/skill dotnet-testing-advanced-testcontainers-nosql` | NoSQL 資料庫容器測試 | | **真實資料庫**、EF Core 測試、Dapper 測試 | `/skill dotnet-testing-advanced-testcontainers-database` | 真實資料庫行為測試 | | **Testcontainers**、容器測試、Docker 測試 | `/skill dotnet-testing-advanced-testcontainers-database` | Testcontainers 基礎 | ### 微服務測試技能 | 使用者說... | 載入指令 | 用途說明 | |------------|----------|----------| | **.NET Aspire**、微服務測試、分散式測試 | `/skill dotnet-testing-advanced-aspire-testing` | Aspire 微服務測試 | | **DistributedApplication**、服務間通訊 | `/skill dotnet-testing-advanced-aspire-testing` | Aspire 應用測試 | ### 框架升級技能 | 使用者說... | 載入指令 | 用途說明 | |------------|----------|----------| | **xUnit 升級**、xUnit 3.x、版本升級 | `/skill dotnet-testing-advanced-xunit-upgrade-guide` | xUnit 2.x → 3.x 升級 | | **TUnit**、新測試框架、TUnit 基礎 | `/skill dotnet-testing-advanced-tunit-fundamentals` | TUnit 基礎與遷移 | | **TUnit 進階**、TUnit DI、平行執行 | `/skill dotnet-testing-advanced-tunit-advanced` | TUnit 進階功能 | --- ## 使用流程範例 ``` 使用者:請幫我建立 ProductsController 的 API 整合測試 AI:我注意到您需要進行 API 整合測試。根據快速對照表, 我應該載入 dotnet-testing-advanced-aspnet-integration-testing skill。 [使用 Skill tool 載入子技能] AI:現在按照 ASP.NET Core Integration Testing skill 的指引為您建立測試... ``` --- ## 完整技能清單 如需查看完整的 8 個進階技能清單、詳細決策樹、學習路徑建議,請繼續閱讀本檔案後續內容。 --- ## 快速決策樹 根據測試情境(API 測試、真實資料庫、微服務、框架遷移)快速找到對應的進階子技能。涵蓋 4 大情境與多個選項分支。 > 詳細內容請參閱 [references/decision-tree.md](references/decision-tree.md) --- ## 技能分類地圖 8 個進階技能分為三大類:整合測試(4 個)、微服務測試(1 個)、框架遷移(3 個),包含各技能的核心價值、適合情境、學習難度與前置技能。 > 詳細內容請參閱 [references/skill-classification-map.md](references/skill-classification-map.md) --- ## 常見任務映射表 7 個常見任務的完整映射,包含情境描述、推薦技能、實施步驟、提示詞範例與預期程式碼結構。 > 詳細內容請參閱 [references/task-mapping-table.md](references/task-mapping-table.md) --- ## 整合測試層級對應 根據專案複雜度,選擇適合的測試策略: ### Level 1:簡單的 WebApi 專案 **專案特徵**: - 簡單的 CRUD API - 無外部依賴或使用記憶體實作 - 業務邏輯簡單 **推薦技能**: - `dotnet-testing-advanced-aspnet-integration-testing` **測試重點**: - 路由驗證 - 模型綁定 - HTTP 回應 - 基本業務邏輯 **範例專案**: - TodoList API - 簡單的產品目錄 --- ### Level 2:相依 Service 的 WebApi 專案 **專案特徵**: - 有業務邏輯層(Services) - 依賴外部服務(可以 Mock) - 中等複雜度 **推薦技能組合**: 1. `dotnet-testing-advanced-aspnet-integration-testing`(基礎) 2. `dotnet-testing-nsubstitute-mocking`(模擬依賴) **測試策略**: - 使用 NSubstitute 建立 Service stub - 測試 Controller 與 Service 的互動 - 驗證錯誤處理 **範例專案**: - 電商 API(有庫存、訂單服務) - CMS 系統 --- ### Level 3:完整的 WebApi 專案 **專案特徵**: - 複雜的業務邏輯 - 需要真實資料庫 - 可能有外部 API 整合 - 完整的錯誤處理 **推薦技能組合**: 1. `dotnet-testing-advanced-webapi-integration-testing`(完整流程) 2. `dotnet-testing-advanced-testcontainers-database`(真實資料庫) 3. `dotnet-testing-advanced-testcontainers-nosql`(如有使用 NoSQL) **測試策略**: - 使用 Testcontainers 建立真實資料庫 - 完整的端到端測試 - 測試資料準備與清理 - 驗證所有錯誤情境 **範例專案**: - 大型電商平台 - 企業級管理系統 - SaaS 應用 --- ## 學習路徑建議 包含整合測試入門(1 週)、微服務測試專精(3-5 天)、框架遷移路徑等完整學習計畫與每日學習重點。 > 詳細內容請參閱 [references/learning-paths.md](references/learning-paths.md) --- ## 技能組合建議 根據不同的專案需求,推薦以下技能組合: ### 組合 1:完整 API 測試專案 **適合**:建立正式專案的完整測試套件 **技能組合**: 1. `dotnet-testing-advanced-aspnet-integration-testing`(基礎) 2. `dotnet-testing-advanced-testcontainers-database`(真實資料庫) 3. `dotnet-testing-advanced-webapi-integration-testing`(完整流程) **學習順序**: 1. 先學 aspnet-integration-testing 理解基礎 2. 再學 testcontainers-database 掌握資料庫測試 3. 最後學 webapi-integration-testing 整合應用 **預期成果**: - 能為 Web API 專案建立完整測試 - 使用真實資料庫驗證行為 - 測試所有 CRUD 端點與錯誤處理 --- ### 組合 2:微服務測試方案 **適合**:微服務架構、分散式系統 **技能組合**: 1. `dotnet-testing-advanced-aspire-testing`(核心) 2. `dotnet-testing-advanced-testcontainers-database`(資料庫) 3. `dotnet-testing-advanced-testcontainers-nosql`(NoSQL) **學習順序**: 1. 先學 testcontainers(資料庫測試基礎) 2. 再學 aspire-testing(微服務測試) **預期成果**: - 測試 .NET Aspire 專案 - 驗證服務間通訊 - 使用容器化環境測試 --- ### 組合 3:框架現代化 **適合**:測試框架升級或遷移 #### 選項 A:xUnit 升級 **技能**: - `dotnet-testing-advanced-xunit-upgrade-guide` **適合**: - 現有專案使用 xUnit 2.x - 想升級到最新版本 --- #### 選項 B:TUnit 遷移 **技能組合**: 1. `dotnet-testing-advanced-tunit-fundamentals`(基礎) 2. `dotnet-testing-advanced-tunit-advanced`(進階) **適合**: - 新專案選擇測試框架 - 考慮從 xUnit 遷移 **學習順序**: 1. 先學 fundamentals 了解基礎 2. 再學 advanced 掌握進階功能 --- ## 前置技能要求 學習進階技能前,建議先掌握以下基礎技能(來自 `dotnet-testing` 基礎技能集): ### 必備技能 #### 1. dotnet-testing-unit-test-fundamentals **為什麼必須**: - 整合測試也遵循 3A Pattern - FIRST 原則同樣適用 - 需要理解測試基礎概念 --- #### 2. dotnet-testing-xunit-project-setup **為什麼必須**: - 需要建立測試專案 - 理解專案結構 - 了解套件管理 --- #### 3. dotnet-testing-awesome-assertions-guide **為什麼必須**: - 整合測試需要驗證 HTTP 回應 - FluentAssertions.Web 提供強大的 API 斷言 - 提升測試可讀性 --- ### 推薦技能 #### 1. dotnet-testing-nsubstitute-mocking **為什麼推薦**: - 整合測試中可能需要 Mock 外部服務 - WebApplicationFactory 需要替換服務 --- #### 2. dotnet-testing-autofixture-basics **為什麼推薦**: - 快速產生測試資料 - 減少整合測試的樣板程式碼 --- ## 引導對話範例 4 個完整的對話範例,展示 AI 如何引導選擇正確技能:API 測試、微服務測試、框架升級、TUnit 評估。 > 詳細內容請參閱 [references/conversation-examples.md](references/conversation-examples.md) --- ## 與基礎技能的關係 進階技能建立在基礎技能之上: **基礎測試能力** → `dotnet-testing`(基礎技能集) - 單元測試基礎 - 測試資料生成 - 斷言與模擬 - 特殊場景處理 **↓ 進階應用** **進階整合測試** → `dotnet-testing-advanced`(本技能集) - Web API 整合測試 - 容器化測試 - 微服務測試 - 框架升級 **學習建議**: 先完成 `dotnet-testing` 基礎技能集的核心技能,再進入本進階技能集。 --- ## 輸出格式 - 根據使用者需求推薦具體的進階子技能名稱與載入指令 - 提供簡短的推薦理由說明為何選擇該技能 - 若涉及多個技能組合,列出建議的學習順序 ## 相關資源 ### 原始資料來源 - **iThome 鐵人賽系列文章**:[老派軟體工程師的測試修練 - 30 天挑戰](https://ithelp.ithome.com.tw/users/20066083/ironman/8276) 2025 iThome 鐵人賽 Software Development 組冠軍 - **完整範例程式碼**:[30Days_in_Testing_Samples](https://github.com/kevintsengtw/30Days_in_Testing_Samples) 包含所有範例專案的可執行程式碼 ### 技術需求 **整合測試技能**: - .NET 8+ - Docker Desktop - WSL2(Windows 環境) **Aspire 測試技能**: - .NET 8+ - .NET Aspire Workload - Docker Desktop --- ## 下一步 選擇符合您需求的進階技能開始學習,或告訴我您的具體情況,我會推薦最適合的學習路徑! **快速開始**: - 想測試 API → 從 `dotnet-testing-advanced-aspnet-integration-testing` 開始 - 需要真實資料庫 → 從 `dotnet-testing-advanced-testcontainers-database` 開始 - 微服務專案 → 使用 `dotnet-testing-advanced-aspire-testing` - 框架升級 → 使用對應的升級指南 - 不確定 → 告訴我您的專案情況,我會幫您分析
GitHubで見る