pytest-dev / pytest-dev/pytest

break up the runtestprotocol and create a sequence of setup/teardown/call actions

Open
#895 8 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

type: backward compatibility type: proposal
Dominant language
Python
Stars
14.5k
Forks
3.4k
Avg merge
2d 9h
Merged PRs (30d)
35

Description

the current usage of setupstate and runtestprotocol creates problematic quirks with tear-down,
to elevate that problem and separate reports better, we should instead have a generator for setup/teardown actions and use those to report setup of items and fixtures as well as the running of items

that way we could remove the need for next-item and ensure each report is much more specific

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 reading the current usage of setupstate and runtestprotocol, with particular attention to teardown behavior and the role of next-item. Define the proposed sequence of setup, teardown, and call actions, then verify that reports distinguish setup of items and fixtures from item execution and that next-item is no longer needed.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
testing
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.