***
這是在資策會數位教育研究所開設的 TDD.NET 課程 (最近一期於 04/27 開課,4/12前報名即享早鳥優惠)。爾後關於單元性 (以2~3天課程)的課程,我們團隊均是透過該單位開設。
後續關於資策會的軟體設計單元性課程,我們也一併會公佈在 FB 社團:軟體設計鮮思維
。
***
有別於 TDD for Java 課程,我們把現今很熱門的 Mock 測試機制納入,以引導學員理解如何建立可隔離於外部環境對程式邏輯、資料庫數據等影響。 (但因課程時數限制,TDD.NET 無法談及壓力/效能測試。該範疇仍於 TDD for Java 課程內。)
關於本課程的主要目的:
- 瞭解TDD的精髓與撰寫原則。
- 區別幾個主要的測試類型與作法-整合 (含UI)、功能驗收/單元。
- 釐清開發人員與QA單位各自關於測試的職掌與相關技能。
- 撰寫高品質的測試案例 (test case)並橋接實作的自動化測試 (automation test)。
- 使用Mock的技術,隔離測試所造成對環境的影響,讓測試可以更富彈性。
- 運用開源的開發工具與測試框架 (framework),大幅降低測試的成本與提升軟體的品質。
關於本課程的介紹:
TDD (Test-Driven Development),測試先行的觀念已逐漸被軟體開發單位接受。但如何達成自動化的測試?要測試的是哪一類型程式?如何撰寫測試測試 …等,一般開發人員甚或 QA 單位仍顯模糊。
對於 Developer 而言,利用如 .NET Unit 測試框架,撰寫以類別為單位的功能性與單元性的測試程式,是確保需求功能的正確性。
而為了達成驗收交付的目的,圖形界面操作的自動化測試,在高精確度驗收與大型的專案中仍是需要的。所以在本次課程中,我們也會介紹如何利用 GUI 的測試框架,包括在 Web UI 環境中,來達成 Web表單、輸入數據等自動化操作。
同時課程也整合了從 GUI 的自動化操作到連結後端系統的功能性物件的整合性測試 (integration test),一氣呵成,全部自動化,花一次工即可。
課程內容同時也說明了,對於自動化測試的環境建置,以及如何利用現今通用流行的 Mock,來隔離測試所造成對環境的影響,讓測試可以更靈活可行。