plone / plone/plone.app.robotframework

Move ZODB and Zope setup and teardown to the layer setup and teardown

Open
#109 6 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
11
Forks
17
Avg merge
1d 11h
Merged PRs (30d)
2

Description

I did a bit of profiling, and contrary to a widely held belief, most of the wallclock time spent in the tests is not spent starting up or closing the browser (WebDriver), but rather at setting up and tearing down the plone site (ZODB, Zope) at every suite setup and suite teardown.

To me this'd seem like a big win to move those setups to the layer setup and layer teardown, as they're shared across all of the suites.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the suite setup and teardown and the corresponding layer setup and teardown in the repository. Trace where the ZODB and Zope site are initialized and closed, then run the functional test suite to establish its current behavior. Done means those operations are shared at layer scope rather than repeated for every suite, with the tests still passing.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
testing
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.