how to get tests passing for Plone 5
"David Glick (Plone)" <david.glick-z4DKO/[email protected]>
| Newsgroups | gmane.comp.web.zope.plone.devel |
|---|---|
| Message-ID | <[email protected]> |
Okay, here's the deal with Plone 5: there is a branch started (5.0 branch of buildout.coredev) which uses plone.app.contenttypes as the default content type system. But there are a lot of tests which are breaking because they assume that the default content types are Archetypes-based. (http://jenkins.plone.org/job/plone-5.0-python-2.7/lastCompletedBuild/testReport/) I could really use some help getting these fixed. A large part of this is making sure that tests are using layers based on the correct fixture. At present the fixtures that we can choose from are: 1. PLONE_FIXTURE from plone.app.testing. As of Plone 5 this no longer installs a content type system, so it's only appropriate for tests that don't use content types. 2. PLONE_APP_CONTENTTYPES_FIXTURE from plone.app.contenttypes. This extends PLONE_FIXTURE and adds the plone.app.contenttypes profile, adding Dexterity-based core content types. Tests of Dexterity-based content should use this. 3. A yet-to-be-created fixture in Products.ATContentTypes that installs Archetypes-based content types like in Plone 4. Tests of Archetypes-based content should use this. 4. PloneTestCase. We should really work on converting these tests to use plone.testing-based layers, but in the meantime, the setup for Plone 5 has been adjusted to install types from plone.app.contenttypes rather than ATContentTypes. This change is the biggest source of the tests that are currently failing. We can move these tests to a class that uses the Products.ATContentTypes fixture from #3. But we also need to consider: a. Does it test something that should also continue to work with Dexterity content? If so we should keep a second copy of the test in a class using the plone.app.contenttypes fixture. b. Does the failure indicate a problem in Dexterity's compatibility with Archetypes content? If so, rather than changing the test maybe we need to fix something in Dexterity. This effort is a work in progress; suggestions of improvements to these guidelines are welcome. If in doubt about what to do for a particular test, talk to me here or on IRC. Oh, also, jenkins is showing significantly fewer tests running in the Plone 5 job compared to the Plone 4 jobs. That probably means there are some import errors preventing tests from being discovered, so it would be great if someone could look into that. thanks, David ------------------------------------------------------------------------------ Introducing Performance Central, a new site from SourceForge and AppDynamics. Performance Central is your source for news, insights, analysis and resources for efficient Application Performance Management. Visit us today! http://pubads.g.doubleclick.net/gampad/clk?id=48897511&iu=/4140/ostg.clktrk