﻿# ASP.NET MVC 內建測試專案如何設定啟用 Code Coverage

昨天上了李智樺老師的**[真實世界的測試開發技術導論](http://cid-68b24674607c69d9.skydrive.live.com/browse.aspx/Techdays%209.23%20Test%20Driven%20Development)**課程，感覺獲益良多，回來就馬上套用到 ASP.NET MVC 的測試專案自行練習一番，結果卻發現怎樣都找不到老師在課堂上展示的 Code Coverage 設定選項，以致於雖然可以測試但就是看不到 Code Coverage 的分析數據，以下就是設定啟用 Code Coverage 功能的說明。

建立 MVC 專案時可以順便建立 **單元測試**(Unit Test) 專案

![建立 MVC 專案時可以順便建立 單元測試(Unit Test) 專案](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/58ecf7638604e971eac5-image.png "建立 MVC 專案時可以順便建立 單元測試(Unit Test) 專案")

在方案總管新增一個 Test Run Configuration 項目

![在方案總管新增一個 Test Run Configuration 項目](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/74113357b1b3dfce14c3-image.png "在方案總管新增一個 Test Run Configuration 項目")

選取 \[Test Run Configuration\] / \[Test Run Configuration\] 並按下 \[Add\] 新增進去

![選取 \[Test Run Configuration\] / \[Test Run Configuration\] 並按下 \[Add\] 新增進去](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/3ce8e9625c3f1a4a4b36-image.png "選取 [Test Run Configuration] / [Test Run Configuration] 並按下 [Add] 新增進去")

新增完後會在 **方案總管**(Solution Explorer) 看到新增的 **Solution Items**

![新增完後會在 方案總管(Solution Explorer) 看到新增的 Solution Items](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/2e31fa6c9d7597b5df1e-image.png "新增完後會在 方案總管(Solution Explorer) 看到新增的 Solution Items")

同時間也會跳出 testrunconfig1.testrunconfig 設定對話框，請切換到 \[Code Coverage\] 頁籤並勾選 MvcApplication 專案，讓該專案在被測試時可以自動計算 Code Coverage 相關數據。

![同時間也會跳出 testrunconfig1.testrunconfig 設定對話框，請切換到 \[Code Coverage\] 頁籤並勾選 MvcApplication 專案，讓該專案在被測試時可以自動計算 Code Coverage 相關數據。](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/187287d515861c9d5ca5-image.png "同時間也會跳出 testrunconfig1.testrunconfig 設定對話框，請切換到 [Code Coverage] 頁籤並勾選 MvcApplication 專案，讓該專案在被測試時可以自動計算 Code Coverage 相關數據。")

最後，進行測試時就可以查看到 Code Coverage 的數據了！

![開啟 Code Coverage Results 視窗](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/1b571bb88e6a91dbdab4-image.png "開啟 Code Coverage Results 視窗")

[![Code Coverage Results](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/c6f68873575f63b412c8-image_thumb.png "Code Coverage Results")](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/385735547cf96d7a589c-image.png)

**相關連結**

-   [Techdays 9.23 Test Driven Development](http://cid-68b24674607c69d9.skydrive.live.com/browse.aspx/Techdays%209.23%20Test%20Driven%20Development) ( 李智樺上課的教材 )
-   [How to: Specify a Test Run Configuration](http://msdn.microsoft.com/en-us/library/ms182480\(VS.80,classic\).aspx)
-   [How to add a test run configuration to a test project with Visual Studio 2008](http://codeclimber.net.nz/archive/2008/11/26/how-to-add-a-test-run-configuration-to-test-project.aspx)
-   [Test-driven development - Wikipedia, the free encyclopedia](http://en.wikipedia.org/wiki/Test-driven_development) / [測試驅動開發](http://zh.wikipedia.org/wiki/%E6%B5%8B%E8%AF%95%E9%A9%B1%E5%8A%A8%E5%BC%80%E5%8F%91)
