Ich habe es geschafft, Gurken-Scala auf einem Play/Scala laufen zu lassen. Jetzt möchte ich die gesamte Play-Anwendung ausführen, damit ich etwas wie Selenium verwenden kann, um meine Anwendung zu testen.Gurken-Scala und Play Framework Integrationstests
Meine Aktuelle Versuche haben mich
val app = new FakeApplication()
val port = 3333
lazy val browser: TestBrowser = TestBrowser.of(webDriverClass, Some("http://localhost:" + port))
lazy val server = TestServer(port, app)
Natürlich dieses FakeApplication führen() wird nicht in irgendeiner Weise konfiguriert ... Bin ich näher dies falsch? Diese Anwendung ist auch Multi-Modul und Idealerweise würde Ich mag die Funktionstests pro Modul laufen haben (Ausgabe vom Baum siehe unten)
├── README.md
├── build.sbt
├── conf
│ ├── application.conf
│ └── routes
├── logs
│ └── application.log
├── modules
│ ├── module1
│ │ ├── app
│ │ ├── conf
│ │ ├── target
│ │ └── test
│ └── module2
│ ├── app
│ ├── conf
│ └── target
└── project
├── build.properties
├── plugins.sbt
├── project
│ └── target
└── target
├── config-classes
├── resolution-cache
├── scala-2.10
└── streams
Ich bin mir bewusst, dass das Spiel eine Selen Integration hat, die verwendet werden kann, um meine Fahrt Tests. Ich habe jedoch eine Geschäftsanforderung für Feature-Dateien, da diese als Berichtmechanismus verwendet werden. Ich bin nicht unbedingt an Gurke gebunden, wenn jemand eine Möglichkeit kennt, browserbasierte Tests mit Feature-Dateien durchzuführen, die auch für mich akzeptabel wären?
Danke,
Ben
Update:
ich durch IntelliJ ausgeführt wurde, die einen Server verursacht keine Strecken oder irgendetwas vorgesehen laufen. Ich nehme an, dies ist, weil es mit einer leeren Standardanwendung ausgeführt wird.
jedoch Wenn durch sbt test
läuft ich folgende Ausgabe:
Verursacht durch: com.google.inject.ProvisionException: Kann nicht Bereitstellung finden Sie die folgenden Fehler:
1) Error in custom provider, Configuration error: Configuration error[Router not found: admin.Routes]
while locating play.api.inject.guice.FakeRouterProvider
while locating play.api.routing.Router
for parameter 0 at play.api.http.JavaCompatibleHttpRequestHandler.<init>(HttpRequestHandler.scala:200)
while locating play.api.http.JavaCompatibleHttpRequestHandler
while locating play.api.http.HttpRequestHandler
for parameter 4 at play.api.DefaultApplication.<init>(Application.scala:221)
at play.api.DefaultApplication.class(Application.scala:221)
while locating play.api.DefaultApplication
while locating play.api.Application
"Ich habe Schwierigkeiten, die Anwendung zu starten" - welche Probleme sehen Sie genau, Fehler beim Ausführen der Tests? Können Sie uns Ihren vollständigen Code zeigen? Wo nennen Sie zum Beispiel 'server.start()'? –
@ SébastienLeCallonnec Sorry, ich sollte klären. Ich kann die Anwendung starten, aber es gibt keine Routen oder irgendetwas konfiguriert. –