我有一個單元測試的WCF服務。我需要保存OperationContext以在測試中使用它。上下文不會保存,因此無法使用它在我的測試中回發。我可以保存當前上下文以在測試中使用它的最佳方式是什麼?在NUnit測試中獲取上下文
回答
你通常不能模擬OperationContext(除非你包裝它)。但檢查一下,如果它對你有幫助。
http://blog.gfader.com/2010/08/how-to-unit-test-wcf-service.html
一些替代方案:
1)另一種方法是簡單地重構你的代碼。將您的服務中的所有業務邏輯帶入單獨的可測試業務類,並讓該服務僅參與集成測試。服務更像基礎設施,並非所有事情都需要單元測試。集成/端到端/行爲測試也是測試和有效的方法。
2)使用更強大的測試框架。檢查Moles framework這是能夠攔截呼叫和重定向他們。這使得「模擬」密封類和靜態方法/屬性成爲可能。使用痣,你可以將調用重定向到OperationContext到你自己的方法。
您是否有一些Moles正在使用Context回傳到雙通道WCF服務或類似的例子?謝謝 – 2013-03-04 05:19:35
抱歉,我沒有,我只是讀了一些文章,併發布了答案,我希望它可以幫助你。 – Popeye 2013-03-04 05:24:23
你在回答中提到,除非我包裹它?你是什麼意思是有一些例子?謝謝 – 2013-03-04 05:25:25
- 1. NUnit在WCF上的測試
- 2. 在NUnit下運行調試測試
- 3. 獲取Nunit測試報告(visual studio)
- 4. 從Nunit獲取失敗測試列表
- 5. 在NUnit測試
- 6. 在Android junit測試用例中獲取測試項目的上下文
- 7. Response.Cache.VaryByHeader上的Nunit測試
- 8. 在NUnit測試IInvokeProvider.Invoke
- 9. NUnit - 在Visual Studio中使用測試適配器運行測試時獲取results.xml
- 10. NUnit:在安裝方法中獲取測試名稱
- 11. NUnit取消SetUp中的測試
- 12. 使用NUnit在c#中測試文本框的測試用例
- 13. Nunit - 測試EXE
- 14. 如何從單元測試中獲取上下文android
- 15. NUnit測試在硒網格上失敗
- 16. NUnit 3測試在VS2015上消失
- 17. NUNIT測試c#中的日誌文件
- 18. 在頁面上下文中測試
- 19. NUnit的測試中OpenCover
- 20. NUnit在測試後回滾
- 21. NUnit的:在一個測試
- 22. 執行Nunit測試
- 23. 分配NUnit測試
- 24. 注射NUnit測試
- 25. NUnit-Console在NUnit 3.x中找不到用於NUnitForms測試的測試裝置
- 26. 試圖從Mono NUnit測試中獲得調試輸出
- 27. NUnit調試單個測試
- 28. Android JUnit4測試 - 從哪裏獲取上下文?
- 29. 從定義的CSV文件中獲取Selenium Webdriver和nUnit測試用例
- 30. 提取NUnit logc以生成測試書
你可以發佈你想測試的代碼嗎? – 2013-03-04 04:44:05