Junit Tapestry 5:页面的测试响应

Junit Tapestry 5:页面的测试响应,junit,tapestry,Junit,Tapestry,我有一个页面,该页面返回StreamResponse(json): 服务器支持带有该页面参数的POST/GET/PUT/DELETE请求 我想为此请求编写一个测试(junit)并断言结果 我是如何做到的?对于Tapestry 5.4之前的版本,有一个SeleniumTestCase可用于运行应用程序的集成测试: 请注意,SeleniumTestCase中使用的seleniumrc已被弃用,新项目不应使用它 tapestry的最新版本建议使用Spock+Geb进行集成测试,可以找到一个例子。有一

我有一个页面,该页面返回
StreamResponse
(json):

服务器支持带有该页面参数的POST/GET/PUT/DELETE请求

我想为此请求编写一个测试(junit)并断言结果


我是如何做到的?

对于Tapestry 5.4之前的版本,有一个
SeleniumTestCase
可用于运行应用程序的集成测试:

请注意,
SeleniumTestCase
中使用的seleniumrc已被弃用,新项目不应使用它

tapestry的最新版本建议使用Spock+Geb进行集成测试,可以找到一个例子。有一个由Tapestry提交者维护的第三方项目可以帮助您为测试设置Geb

您也可以使用启动应用程序,但据我所知,
PageTester
本身无法使用自定义HTTP谓词,因此您需要使用其他方式发送请求,即使用相同的Spock+Geb

请注意,具有响应不同HTTP谓词并返回JSON响应的Tapestry页面并不常见。看起来您正在尝试实现某种RESTAPI,在本例中,我建议您看看Tynamo的


使用tapestry resteasy,您可以将tapestry服务公开为REST端点。在这种情况下,您可以使用上述
PageTester
将端点作为常规Tapestry服务进行测试。

对于Tapestry 5.4之前的版本,有一个
SeleniumTestCase
可用于运行应用程序的集成测试:

请注意,
SeleniumTestCase
中使用的seleniumrc已被弃用,新项目不应使用它

tapestry的最新版本建议使用Spock+Geb进行集成测试,可以找到一个例子。有一个由Tapestry提交者维护的第三方项目可以帮助您为测试设置Geb

您也可以使用启动应用程序,但据我所知,
PageTester
本身无法使用自定义HTTP谓词,因此您需要使用其他方式发送请求,即使用相同的Spock+Geb

请注意,具有响应不同HTTP谓词并返回JSON响应的Tapestry页面并不常见。看起来您正在尝试实现某种RESTAPI,在本例中,我建议您看看Tynamo的


使用tapestry resteasy,您可以将tapestry服务公开为REST端点。在这种情况下,您可以使用上述
PageTester
将端点作为常规Tapestry服务进行测试。

您到底想测试什么?tapestry应用程序如何处理不同的HTTP谓词?或者只是实现
onActivate()
?是的,我想确定我的服务器工作正常,它对某些请求的回答正确。那么,我现在做了什么?我运行服务器,然后调用curl到某个my server页面并控制该服务器返回(服务器为我获取一些json数据)?tapestry应用程序如何处理不同的HTTP谓词?或者只是实现
onActivate()
?是的,我想确定我的服务器工作正常,它对某些请求的回答正确。那么,我现在做了什么?我运行服务器,然后调用curl到某个my server页面,并控制该服务器返回(服务器获取一些json数据)。
StreamResponse onActivate() { .... }