【发布时间】:2023-04-04 17:11:01
【问题描述】:
我正在尝试测试一个依赖于外部 Web 服务的组件,我通过 Play WS 库访问该组件。该组件接收 web 服务的 url。
我想通过将组件连接到虚假网络服务来对组件进行单元测试。
哪个 scala web 框架更适合这个目的?
【问题讨论】:
标签: web-services scala scalatra
我正在尝试测试一个依赖于外部 Web 服务的组件,我通过 Play WS 库访问该组件。该组件接收 web 服务的 url。
我想通过将组件连接到虚假网络服务来对组件进行单元测试。
哪个 scala web 框架更适合这个目的?
【问题讨论】:
标签: web-services scala scalatra
我找不到比scalatra 更简单的东西。尽管主页上的代码非常简单,但您必须做一些额外的工作才能将 scalatra 嵌入到您自己的应用程序/测试中。
import org.scalatra._
import org.eclipse.jetty.server.Server
import org.eclipse.jetty.webapp.WebAppContext
private class Mocker extends ScalatraServlet {
get("/somepath") {
<h1>Mocked response</h1>
}
}
// ↓ you won't need that part if you start jetty as sbt command
private val jetty = new Server(8080)
private val context = new WebAppContext()
context setContextPath "/"
context setResourceBase "/tmp"
context addServlet(classOf[Mocker], "/*")
jetty.setHandler(context)
jetty.start
【讨论】: