選擇檢測資料夾
如果您要在測試組件程式碼時收集程式碼涵蓋範圍資料,Visual Studio 必須先「檢測」(Instrument) 該組件。 檢測程序會將程式碼加入至產生程式碼涵蓋範圍資料的組件。
您可以決定檢測組件的資料夾。 Visual Studio 可以在下列兩個位置中的一個位置檢測組件:
就地。 如果您選取「就地」(In-Place) 檢測,Visual Studio 會在您執行測試之前,在組件所在的資料夾中檢測組件。 如果組件是您所建立之應用程式的一部分,這個資料夾就是 Visual Studio 建置組件的資料夾。
在部署資料夾中。 如果您沒有選取就地檢測,Visual Studio 會在「部署資料夾」(Deployment Folder) 中檢測組件。 部署資料夾是專門針對測試回合而建立的。 如需如何設定測試部署的詳細資訊,請參閱 HOW TO:設定測試部署。
決定檢測資料夾
要選擇就地或在部署資料夾中,視您對組件所具有的存取權限層級和組件的類型而定。
有限可用性的組件。 具有一個或多個下表所列之狀態的組件,即為有限可用性的組件:
由許多人共用的組件。 共用之組件的問題在於多位使用者之間可能發生衝突。 例如,有兩個使用者啟動測試回合,也在同一時間從同一個組件要求程式碼涵蓋範圍資料。
組件位於網路共用,而不在您的本機電腦上。
您對組件具有唯讀存取權限。
具有固定載入位置的組件。 測試執行引擎僅能從特定位置載入特定的組件。 下列表格中所指的組件,就是具有固定載入位置的組件。 包含下列檔案類型:
COM 元件
控制台頁面
下列表格提供選擇正確檢測資料夾的指引。 請參閱其他注意事項欄,了解需要考量特定因素的狀況。
組件的本機位置 |
組件可用性 |
在此資料夾中檢測 |
其他注意事項 |
固定 |
無限制 |
就地 |
(無) |
不固定 |
有限 |
在部署資料夾中 |
(無) |
不固定 |
無限制 |
兩個資料夾都可以,不過建議您選擇「在部署資料夾中」。 |
如果在選擇就地檢測之後,您在測試回合期間重新建置檢測的組件,測試引擎會偵測到重新建置的組件比較新,而不會還原其檢測前的版本,然後產生執行層級警告。 |
固定 |
有限 |
就地,但請參閱其他注意事項 |
如果您沒有選擇就地檢測,則不會檢測任何固定位置中的組件。 也就是說,雖然測試執行成功,而且沒有產生執行層級警告,但是並沒有收集程式碼涵蓋範圍資料。 |
指定檢測資料夾
您有兩種方式可以選擇就地檢測或在部署資料夾中檢測:
若要將您的選擇設為預設設定,請移至 Visual Studio 的 [工具] 功能表上的 [選項] 對話方塊。 若要找到這個設定,請查看 [測試工具] 節點下的 [測試執行] 頁面。
在設定程式碼涵蓋範圍的診斷資料配接器測試時,也可以指定測試設定的檢測資料夾。 如需詳細資訊,請參閱 HOW TO:使用自動化測試的測試設定進行程式碼涵蓋範圍的設定。
固定位置、有限可用性的組件
若要修改就地檢測的組件,必須符合下列準則:
組件檔必須未設定為唯讀屬性。 如果您對該檔案具有足夠權限,就可以修正這個設定。
執行測試的使用者必須具有修改組件的必要權限。 因為檢測工作是由主應用程式所執行,因此不論是本機或遠端執行,需要有這些權限的帳戶即為執行 devenv.exe 或 MSTest.exe 的帳戶。 這個帳戶屬於執行 Visual Studio 的使用者,也就是執行 MSTest.exe 命令,或啟動組件 (隨後並執行測試) 的使用者。
組件檔必須是未使用中,或由其他程式鎖定。 若要修正此問題,您必須終止鎖定的程式或等它完成。
如果測試引擎依然無法檢測一個或多個組件,則會產生執行層級警告。