Mechagen is a tool for generating automatic Zope2 (and Plone) functional tests
for the mechanize framework.
The mechanize framework can be used to write Zope2 functional tests in a
flexible way and is getting also used in Plone products. However, it lacks
support for automatic generation of tests. Mechagen is a tool that adds this
(zope.testbrowser, zope.testrecorder also offer such a framework. Mechagen was
not influenced by them and integration with these libraries will be done only
The followings characterize the generation process:
- All the tests will be ZopeTestCase based python code, so the integration
between traditional (non-functional) and functional tests are complete. There
is no need for a separate test runner but the same runner runs all the tests,
both functional and traditional ones.
- The generator automatically records a given interactive series of requests,
and generates a test method from it. Although the generated code can be used
as a test without any modification, it should rather be thought of as a
template to be edited prior to usage.
- The generated tests run in the sandbox provided by the ZopeTestCase
framework, which ensures that each test runs independently in the custom
environment set up for it.
- The interactive recording will go forth in exactly the same sandbox that is
designated to run the test later.
- The generation process should be easy to use, no extra tools should be
necessary and the entire process should be easily manageable from within the
test runner environment.
until that". So mechagen cannot replace Selenium but you can do much richer
functional testing with it and you can complement these tests with Selenium
It fully supports Plone.
It has a plugin mechanism for extending the generation of checks for your
custom page types.
The code is beta quality, error reports and comments are welcome.
For more information, please visit http://www.zope.org/Members/ree/mechagen .
Balazs Ree, ree at ree.hu
Zope maillist - Zope@zope.org
** No cross posts or HTML encoding! **
(Related lists -