我想测试我的方法,该方法需要上传文件。它被初始化这样的:PlayFramework测试:在假请求错误中上传文件
val tempFile = TemporaryFile(new java.io.File("/home/ophelia/Desktop/students"))
val part = FilePart[TemporaryFile](
key = "students",
filename = "students",
contentType = Some("text/plain"),
ref = tempFile)
val files = Seq[FilePart[TemporaryFile]](part)
val formData = MultipartFormData(
dataParts = Map(),
files = Seq(part),
badParts = Seq(),
missingFileParts = Seq())
我将它传递到FakeRequest:
val result = route(
FakeRequest(POST, "/api/courses/"+"4f3c4ec9-46bf-4a05-a0b2-886c2040f2f6"+"/import")
.withHeaders("Authorization" -> ("Session " + testSessionA.id.string))
.withMultipartFormDataBody(formData)
)
但是当我运行测试,我得到以下错误:
Cannot write an instance of play.api.mvc.AnyContentAsMultipartFormData to HTTP response. Try to define a Writeable[play.api.mvc.AnyContentAsMultipartFormData]
我在做什么错误和如何解决它?我在网上查看,我没有找到任何有用的方法来理解和解决这个问题。
您会发布错误吗? –
废话。复制错误的行。感谢您注意 – Ophelia
[在FakeRequest中使用MultipartFormData播放框架测试](http:// stackoverflow。com/questions/19658766/play-framework-testing-using-multipartformdata-in-a-fakerequest) –