February 14, 2010

Multi-Mechanize - new open source performance testing tool

To all perfmormance and load testers out there...

I am working on a new tool/framework for web load testing. yes, that's right, another one.

My last tool, Pylot, was very limited because of the fact that you had to create a test script in a declarative format. I have come to the conclusion that you *need* a scripting language for defining test cases, and decided to develop a scriptable performance testing tool.

visit the project site: Multi-Mechanize


Multi-Mechanize is an open source framework for web performance and load testing. It allows you to run simultaneous python scripts to generate load (synthetic transactions) against a web site or web service.

In your scripts, you have the convenience of mechanize along with the power of the full Python programming language at your disposal. You programmatically create test scripts to simulate virtual user activity. Your scripts will then generate HTTP requests to intelligently navigate a web site or send requests to a web service.

Multi-Mechanize uses a multi-process, multi-threaded engine to replay your scripts and generate concurrent virtual users.

Results are saved in CSV format along with an HTML report containing stats and graphs.

comments, questions, collaboration welcome...

there is a discussion group for the new tool here: group.multimechanize.com
feel free to post!

7 comments:

Patrick Lightbody said...

Corey,
Glad to see you're still working on this stuff. So does that mean Pylot is end-of-life'd?

I builtBrowserMob with the same conclusion: a full scripting environment is the way to go. It might be a little less efficient, but with cloud computing you can get plenty of CPU resources to run enough threads.

Patrick

Corey Goldberg said...

i guess that's fair to say that Pylot is end of life'ed. There are quite a few users and I will continue to host and accept patches for it, but i'm not planning on spending more time developing it. That said, I think it is a very useful tool and hope people will continue to get value from it.

but there is nothing that Pylot could do that Multi-Mechanize can't do better. Having the power of a full scripting environment makes it slightly more difficult to jump right into, but once you get over the hump, the benefits are endless.

so far, I am finding the framework to very efficient in terms of CPU. i generally knock over a system under test or run out of bandwidth trying.

Prashanth said...

Looking forward to your new tool..I built something similar which consumes the html page(hitting all the links in it) to simulate browser. mechanize seems to be a good module to do the same....

Corey Goldberg said...

@Prashanth
go ahead and download it and let me know what you think. feedback is greatly appreciated.

-Corey

Roland Stens said...

Corey, would be be able to include STDEV in your reports? I really miss it as I use this typically as one of my first quick indicators of trouble.

Corey Goldberg said...

@roland

thanks for checking it out. can you do me a favor and join the discussion group and post a message requesting this feature?

http://group.multimechanize.com

-Corey

Roland Stens said...

Done