我有一個單元測試,其中包含需要與實際自定義對象進行比較的大量數據。所以我必須創建一個預期的自定義對象,並用大量數據填充它,現在我很難在代碼中編寫預期的自定義對象。有一種情況是我已經用不同的一組數據作爲我正在測試的方法的輸入進行測試。根據數據集的不同,我必須得到相應的輸出,這將是實際的響應(巨大的數據)。除了在代碼中對預期值進行硬編碼以外,是否還有上述場景的最佳做法? (有些東西像XML或CSV)。單元測試數據生成的最佳做法
回答
您可以使用XmlSerializer
創建將序列化對象的代碼。
當應用程序正在運行並且內存中有正確的對象時,您需要調用該代碼。
將XML保存到文件中,並在XML中測試構造對象。
您可能有多個可覆蓋不同場景的XML文件。
在我的應用程序中,我有從外部web服務導入數據的代碼。我爲服務響應對象(他們是巨大的)生成了一些XML,並使用它們來測試我的解析邏輯。
更新:該技巧僅適用於實體對象。你不能序列化/反序列化與文件或數據庫一起工作的類。
在這裏您可以找到示例代碼。 http://www.jonasjohn.de/snippets/csharp/xmlserializer-example.htm
您可以向我發送一個您正在做什麼的示例嗎?它看起來與我正在實施的相似。 – user1432798
[xmlserializer-example](http://www.jonasjohn.de/snippets/csharp/xmlserializer-example.htm)當構造好對象時,應在生產代碼中調用SerializerObj.Serialize,並且TestClass LoadedObj =(TestClass)SerializerObj .Deserialize(ReadFileStream);在單元測試中準備數據。 –
- 1. Android單元測試的最佳做法?
- 2. 單元測試的最佳做法IHttpModule
- 3. 最佳做法/集成測試
- 4. 命名單元和集成測試方法的最佳做法是什麼?
- 5. 在插入單元測試後清理數據的最佳做法是什麼
- 6. 單元測試寫作的最佳做法
- 7. 是否有測試特殊成員函數的最佳做法?
- 8. 在生成的C#類中動態單元測試的最佳方法
- 9. 測試MSI安裝的最佳做法
- 10. 生成縮略圖的最佳做法?
- 11. 生成事件的最佳做法?
- 12. 測試JSON數據的最佳做法是什麼?
- 13. 單元測試/集成測試GXT代碼的最佳方法是什麼?
- 14. 集成測試數據庫驅動的php的最佳做法是什麼?
- 15. 集成測試/單元測試:做了太多集成測試?
- 16. C#單元測試生成
- 17. 生成複雜數據庫(EAV)的單元測試數據
- 18. 在.NET中單元測試私有方法的最佳做法是什麼?
- 19. 單元測試的最佳實踐XmlDocument
- 20. 單元測試的最佳方式DbProviderFactory
- 21. Clojure的最佳單元測試框架?
- 22. JDBC /數據庫單元測試的最佳實踐
- 23. 使用Maven進行集成測試的最佳做法?
- 24. 什麼是單元測試構造函數的最佳方法?
- 25. 第三方軟件API的單元測試的最佳做法(AutoCAD)
- 26. 管理/生成保單號碼的最佳做法
- 27. 生成火花單選按鈕的最佳做法是什麼?
- 28. 單元測試生成圖像的代碼的最佳方式是什麼?
- 29. 單元測試方法參數驗證最佳實踐
- 30. 最佳實踐:組織單元測試
發佈您正在做的事情的代碼示例通常很有幫助,因此人們可以爲您提供具體的反饋... – Scrappydog