0

我正在使用 Play 2.2 和 Specs2 并进行以下测试

  import org.specs2.mutable.Specification
  import org.specs2.runner.JUnitRunner

  import play.api.test.Helpers.running
  import play.api.test.{FakeApplication, TestBrowser, TestServer}
  import java.util.concurrent.TimeUnit
  import org.openqa.selenium.firefox.FirefoxDriver
  import org.fluentlenium.core.domain.{FluentList, FluentWebElement}
  import org.openqa.selenium.NoSuchElementException

  "Application" should {
    "work from within a browser" in {
      running(TestServer(port, application = FakeApplication(additionalConfiguration = Map("configParam.value" -> 2)), classOf[FirefoxDriver]) {
      .....
      }
    }
  }

configParam.value在应用程序中通过以下方式访问

import scala.concurrent.Future
import play.api.libs.json._
import play.api.Play._
import play.api.libs.ws.Response
import play.api.libs.json.JsObject

object Configuration {
   val configParamValue = current.configuration.getString("configParam.value").get
}

运行时play test使用configParam.value的是 fromapplication.conf而不是 pass in FakeApplication

我在这里做错了什么?

4

1 回答 1

1

问题可能出在Map传递给additionalConfiguration.

您正在传递一个Int并尝试使用“getString”获取一个字符串

尝试更改为:

running(TestServer(port, application = FakeApplication(additionalConfiguration = Map("configParam.value" -> "2")), classOf[FirefoxDriver]) {

注意"周围的2

于 2013-11-04T18:03:07.093 回答