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 support. (zope.testbrowser, zope.testrecorder also offer such a framework. Mechagen was not influenced by them and integration with these libraries will be done only later.) 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. You cannot test javascript in your pages with this method, but "everything 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 generated ones. 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 http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )