We can reuse the framework already developped with the modifications :
define a protocol between client and server. Indeed today we need code both on client and server and we have the following interactions :
Client deploys a porlet application
Client initiates the test by rendering a specific portlet in the application
Server performs a task and send a result to the client
Client gets the results and check it is what it expects
Client terminates the test and undeploy the portlet application
Any the following actions can be taken on the client side :
Assert server side result
Invoke url returned by the server side
Define a protocol between the client and server, thus the server side tests can tell the client side what action to take and this avoid to have code on the client side (this kind of code is usually very repetitive).
Remove the custom marshalling done at the portlet container level and use only the portlet rendered markup delimited by specific markers.
Define the object model for the protocol
Define the XML binding for the object model using JBossXB