2016-03-21 18 views
0

Activator paketi sürümünü indirip ayıklayarak Play Framework 2.5 yükledim. Yeni bir Play scala uygulaması oluşturmak ve ardından oyun konsoluna girmek için aktivatör komutunu kullandım. Oyun konsolunun içinde scala replini almak için console yazdım. Sorulduğunda ben play.api.test paketinden WithApplication içe çalıştık ve ben de ExampleControllerSpec.scala test dizininde oluşturulmasını bir test sınıfında içine almak için çalıştı aşağıdaki hatayıOynat Çerçeve ve Scala içe aktarma

scala> import play.api.test.{WithApplication} 
<console>:10: error: object WithApplication is not a member of package play.api.test 
     import play.api.test.{WithApplication} 

var ve aynı hata var. Bunun benim test sınıfında çalışmıyor Öyleyse neden https://www.playframework.com/documentation/2.5.x/api/scala/index.html#play.api.test.package

olduğunu görüyoruz Ben belgelere bakarsak İşte

import org.scalatest._ 
import org.scalatestplus.play._ 

import play.api.mvc._ 
import play.api.test._ 
import play.api.test.Helpers._ 

class ExampleControllerSpec extends PlaySpec { 
    "Example Page#index" should { 
    "should be valid" in new WithApplication { 
    } 
    } 
} 

PlayConsole

$ test 
[info] Compiling 1 Scala source to D:\Play\TestApp\target\scala-2.11\test-classes... 
[error] D:\Play\TestApp\test\ExampleControllerSpec.scala:10: not found: type WithApplication 
[error]  "should be valid" in new WithApplication { 
[error]       ^
[error] one error found 
[error] (test:compileIncremental) Compilation failed 

çıkıştır ve scala replinde mi?

+0

Test dosyasında içe aktarma işlemi yapıldığında, hatayı tetikleyen hangi aktivatör komutunu çalıştırdınız? –

+0

Dosyayı sınamak için test komutunu çalıştırıyorum. – jerome

+0

Oynatım 2.4'te bile play.api.test değil, play.test'te yalnızca Uygula seçeneğim var. Yani, hızlı bir düzeltme kullanmanız gerekiyorsa, içe aktarma kullanımı gerekir, ancak doc'ların olması gerektiği söylendiğine göre play.api.test içinde olmaması gerçekten gariptir. Oyun çok kafa karıştırıcı belgelere sahip, ben son 20 dakika aradım ve gerçekten bunu çözemiyorum. Orada olmalı ama değil. – slouc

cevap

2

REPL'de test:console kullanın. Test sınıflarının tamamı ana derleme kapsamına yüklenmez.

+0

WithApplication'ı içe aktarma scala test dosyası oluşturduktan sonra komut testini çalıştırırken içe aktarma hatası ile ilgili yardım için teşekkür ederiz. – jerome