我閱讀了Finatra入門指南,並且我能夠編寫HelloWorld服務及其功能測試。Finatra FeatureTests:如何手動反序列化返回的json
目前我特性測試看起來像
server.httpPost(
path = "/hi",
postBody = """{"name": "Foo", "dob": 136190040000}""",
andExpect = Ok,
withBody = """{"msg":"Hello Foo. You are 15780 days old today"}""")
這工作得很好,我的測試通過。不過,我的要求是,我提取服務器返回的json,然後手動對返回的對象執行斷言。
我改變了我的代碼
val response = server.httpPost(
path = "/hi",
postBody = """{"name": "Abhishek", "dob": 136190040000}""",
andExpect = Ok,
withBody = """{"msg":"Hello Abhishek. You are 15780 days old today"}""")
val json = response.contentString
這也適用,我可以看到在端返回的變量的JSON的JSON。
我的問題是,如果我不得不反序列化這個json到一個對象。我應該只是拉入任何json庫像circe?然後反序列化對象?
或者我可以使用進入Finatra的傑克遜框架。
在我能找到的所有例子中,我看到Finatra「自動」處理json序列化和反序列化。但在我的情況下,我想手動執行此操作。