On Fri, 21 May 2004 22:30:36 +0900, David Heinemeier Hansson wrote
> Rails[1] provide access to the rendered template _without_ going 
> through a browser, which can then be queried through XPath (if the 
> template uses XHTML). It can also provide access to the attributes 
> assigned to make the template. And even to check which template was 
> used.
> 
> This is done by using mock requests and responses and works 
> extremely well. It's considerably faster than going through HTTP for 
> every request (which is often what slows down functional/acceptance 
> testing and make them run for hours). It also gives you the 
> opportunity to set and check conditions through code that might have 
> been incovenient to generate through regular interfacing. Basically
> mocking.

Iowa is like this, as well.  Iowa applications operate off of an 
Iowa::Request, a class that looks a lot like Apache::Request but is 
marshallable.  It's easy to build requests, pass them to the application, 
and get responses back, making it very easy to write scripts to test drive 
applications and check responses.


Kirk Haines