Pytester
SkillDev toolsGuides your agent to write and run isolated pytest plugin tests using pytester.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Pytester skill
About this capability
Write and run isolated pytester-based plugin tests.
What this skill tells your AI
The instructions your AI receives, as published by ethereum/execution-specs in .agents/skills/pytester/SKILL.md and read by ahel’s review.
Guide for pytester-based plugin/CLI tests. Run before writing or modifying these tests.
Which execution mode to use
runpytest()— default. In-process, fast, fullRunResultAPI (assert_outcomes(),fnmatch_lines()).runpytest_subprocess()— use only when in-process causes state leakage (Pydantic cache pollution, global mutation inpytest_configure). SameRunResultAPI.- Raw
subprocess.run()— never use alongside pytester. Userunpytest_subprocess()instead.
Subprocess isolation masks bugs rather than fixing them. Prefer fixing the root cause and use subprocess as defense-in-depth.
Expected inner failures
runpytest_subprocess() replays inner output to outer stdout (by design). Suppress with capsys.readouterr():
def test_expected_failure(pytester: Any, capsys: Any, pytestconfig: Any) -> None:
result = pytester.runpytest_subprocess(...)
capsys.readouterr() # suppress inner failure bleed
assert result.ret != 0
output = "\n".join(result.outlines + result.errlines)
# conditional print for -s debugging
if pytestconfig.getoption("capture") == "no":
with capsys.disabled():
print(output)
RunResult API
Prefer assert_outcomes() and fnmatch_lines() over manual any(... in line ...) — better failure messages.
result.ret— exit coderesult.outlines/result.errlines— line listsresult.assert_outcomes(passed=N, failed=N)result.stdout.fnmatch_lines(["*pattern*"])
Signals
- GitHub stars
- 1k
- Forks
- 505
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
pytester- Source
- github.com/ethereum/execution-specs