我正在使用Microsoft Visual Studio測試框架,我的一些測試需要一個xml文件作爲輸入。 目前我已將它們放在我的TestProject的資源目錄下,並通過「.. \ .. \ whatever」路徑名稱訪問它們。我希望在使用測試資源文件時有一個好的做法建議,因爲我想在所有這些情況下重新使用我的測試 - 直接從VS 2010 - 在我的服務器上構建過程中 - 在持續集成環境中 一個透明(和簡單)的方式。C#測試資源
Q
C#測試資源
7
A
回答
8
首先,我通常會盡量減少在測試過程中依賴文件系統的需要(通過引入文件系統的某種抽象,以便可以模擬文件系統訪問)。
如果這是不可能的,我將這些文件包含在測試項目中,名爲TestData
或類似的子文件夾中。然後,我將「複製到輸出目錄」設置爲「始終複製」,以便該文件包含在輸出中,並且位於與測試程序集有關的已知位置(不管該構建是否在Visual中完成Studio或構建服務器)。只要沒有測試代碼正在修改文件,只需要它們讀取數據,就可以很好地工作。
0
我在我的一個集成測試中做了這樣的事情;我已經用相同的方式解決了它。只要你的文件被檢入到源代碼控制中,並且你使用了一個相對路徑(它看起來像你),它應該按預期工作。
0
我們對CI使用TFS2010。所有輸出文件放入Binaries文件夾中。對於像XML這樣的配置資源,我們使用Copy來輸出目錄選項爲Always always。所以它會一直放在輸出目錄中。
2
我會建議從以下方法answer。這是一個類似的問題。 該方法利用了DeploymentItem
屬性,也用於進行數據驅動的單元測試。
相關問題
- 1. REST資源測試
- 2. Javascript測試資源
- 3. maven3主要資源VS測試資源
- 4. m2eclipse過濾測試資源
- 5. 資源泄漏測試
- 6. 測試DSC定製資源
- 7. 如何測試after_sign_in_path_for(資源)?
- 8. JUnit類的測試資源
- 9. 調試maven junit測試過濾資源?
- 10. 測試C/C++源代碼
- 11. C#資源與XAML資源
- 12. 開源突變測試C++
- 13. Robolectric 3:加載測試特定資源
- 14. 資源$ NotFoundException當運行Roboelectric測試
- 15. 如何獲取測試資源文件?
- 16. 的Android測試原始資源
- 17. 如何測試嵌套資源
- 18. 訪問單元測試資源
- 19. 測試非資源行動on Rails的
- 20. 用於性能測試的資源
- 21. Android的擴展文件 - 資源測試
- 22. Jmock,測試中的Spring和Anotated資源
- 23. 噶單元測試跨域資源AngularJS
- 24. iOS模擬器訪問測試資源
- 25. 如何使maven使用測試資源
- 26. 單元測試Android,從資源getString
- 27. 單元測試在AngularJS模擬$資源
- 28. Maven - 覆蓋測試資源文件夾
- 29. gradle/intellij - 共享測試資源
- 30. 單元測試和外部資源
你在哪裏設置複製到輸出目錄以始終複製?在每個文件上,或者您可以在目錄上全局設置它? – 2011-04-08 12:05:03
@Terenzio:我想,你需要把它設置在單個文件上。我認爲你可以通過在解決方案資源管理器中選擇一系列文件來做到這一點(現在不能檢查:目前沒有Visual Studio)。 – 2011-04-08 12:36:01
VS2010:還將生成操作文件屬性設置爲「無」。 – Dmitry 2011-06-16 07:35:31