gpt4 book ai didi

json - Scalatra 测试 RESTful JSON 对象

转载 作者:行者123 更新时间:2023-12-05 00:38:19 27 4
gpt4 key购买 nike

我正在使用 Scalatra 为一些 JSON RESTful API 编写测试,一个片段如下所示

class MyScalatraServletTests extends ScalatraSuite with FunSuite {

test("An valid request should return 200") {
get ("/rest/json/accc/B1Q4K3/1") {
status should equal (200)
body should include ("TEST")
}
}
}

正文 预期是 Scalatra 通过其 JSON 支持序列化的 JSON。我的问题是如何转换 正文 回到scala中的同一个case类实例,大大简化了测试?

最佳答案

json4s 可以直接用于从 JSON 值中提取案例类。

import org.json4s._
import org.json4s.jackson.JsonMethods._
val parsedBody = parse(body)
parsedBody.extract[MyCaseClass]

您还可以使用类似 XPath 的表达式来查询 JSON。
val parsedBody = parse(body)
val email = (parsedBody \ "user" \ "email").values
email should be ("example@example.org")

您可以调用 .valuesString 获取原始 Scala 值( Int s、 JValue s 等​​) s(json4s 的 JSON 文档的内部表示)。

json4s introduction所有这些的例子。

关于json - Scalatra 测试 RESTful JSON 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14157045/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com