[ptt-users] Solution to testmaker recorder slowness problem?

Geoff Meakin geoffm at gamesys.co.uk
Fri Jan 12 09:25:28 PST 2007


Hi Frank,

I was mucking around with both testmaker and my own proxy server
recently, and noticed a problem which may ring a bell with you or not...

I don't really know how testmaker's proxy works, but if a server returns
a header: 

Transfer-encoding: chunked

But the proxy itself sends back unchunked data, then the browser will be
very slow in a HTTP/1.1 type keep-alive connection.

(Because the browser expecting chunked information and not getting it so
keeping the connection open even if the server specifies Connection:
close)

If none of that makes sense then don't worry, I fixed mine by
intercepting transfer-encoding: chunked and changing it to a
Content-Length declaration instead.

Cheers
-Geoff



-----Original Message-----
From: users-bounces at lists.pushtotest.com
[mailto:users-bounces at lists.pushtotest.com] On Behalf Of Frank Cohen
Sent: 11 January 2007 18:53
To: TestMaker users list
Subject: [ptt-users] Please vote on TestMaker 4.4.1 release

So far, the response to the maintenance release has been positive.  
Would you please vote on releasing it. Thanks for everyone's help on  
this. -Frank


---

A maintenance release of TestMaker 4.4.1 is now available for  
download at:

http://downloads.pushtotest.com/TestMaker441.zip

Please download it and look for problems, documentation bugs, and  
other issues. Please then let us know if you think this build is  
ready for release. We would ideally like to make this release general  
available in the coming week.

Below is a list of changes in the new 4.4.1 distribution:

- TestMaker 4.4.1 requires Java 1.5 or greater. We have started to  
use generics in the source and that causes the requirement. Please  
give us feedback on this decision. If it is a real pain to require  
Java 1.5 then we could back out these changes and save the Java 1.5  
requirement for TestMaker 5 (which comes out later this year.)

- WebObjects and Microsoft IIS users have occassionally found these  
servers returning HTTP redirect response codes with a relative URI.  
RFC 2116 section 14.30 requires the location header to be an absolute  
URI. According to the RFC relative URIs must only be sent using the  
META refresh tag. The TestMaker team does not want TestMaker to be a  
traffic cop for implementations of RFC 2116. So TestMaker 4.4.1  
HTTPProtocol has a special check for the relative URI on redirect  
(HTTP response code 302) and adds the domain name itself from the  
original POST. TestMaker scripts must use the  
http_protocol_handler.connect(1) form to follow redirects. Recorded  
scripts do not automatically add the (1) parameter. Thanks to Aaron  
Romeo, Dominique de Waleffe, and Kevin Dyer for participating in  
developing the solution.

- TestMaker.sh and TestMaker.bat are start-up shell scripts for  
TestMaker on Unix/Linux and Windows operating systems. These scripts  
build a classpath for TestMaker. Previous versions used external  
scripts in the util directory to build the complete classpath. On  
Windows NT and 2000 operating systems this caused a "script too long"  
exception. TestMaker 4.4.1 builds the classpath in the TestMaker.bat  
and TestMaker.sh scripts directly. Thanks to Aaron Romeo for pointing  
out the problems and recommending a solution.

- Scripts using TestMaker_home/lib/agentbase.py would throw a  
NullPointerException if there were no return parameters in a GET or  
POST command. Thanks to Todd Bradfute for a patch that solves this  
problem.
Scripts using agentbase.py to check links to image tags would throw a  
"Has no attribute 'handler'" exception when an exception was  
encountered. Thanks to Todd Bradfute for a patch that solves this  
problem.

- Long running XSTest operations may run out of memory. HTTPProtocol  
has a URLlist that grows while the test runs to keep track of URLs  
and redirected URLs. TestMaker 4.4.1 changes agentbase.py to call the  
HTTPProtocol clearURLlist() method in the config() method. That way  
the list is reset each time the test's setUp() method is called.  
Thanks to Carl Herder for pointing out the problems and recommending  
a solution.

- agentbase.py has a new feature to control the content type of a  
http-post, and also post a pure value as well as key=value.  The post  
method takes an additional optional parameter to set the content-type  
of the post. For instance, post( url, params, 'application/x-www-form- 
urlencoded' ). Thanks to Geoff Meakin (geoffm at gamesys.co dot uk)  
for the contribution.

-Frank

--
Frank Cohen, PushToTest, http://www.PushToTest.com, phone 408 374 7426
TestMaker: The open-source SOA test automation tool



_______________________________________________
Users mailing list
Users at lists.pushtotest.com
http://lists.pushtotest.com/mailman/listinfo/users


More information about the Users mailing list