3

我正在尝试测试一个依赖于外部 Web 服务的组件,我通过 Play WS 库访问该组件。该组件接收 web 服务的 url。

我想通过将组件连接到假网络服务来对组件进行单元测试。

哪个 scala web 框架更适合这个目的?

4

1 回答 1

4

我找不到比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

独立应用程序真的那么简单

于 2013-04-23T08:07:32.840 回答