DEV Community

Dmitop
Dmitop

Posted on

Python EasyAccept

Hey! Quick update on Python EasyAccept—that tool for automating code submission testing. Finally set it up for our team's Python project, and hit a weird environment thing, but figured it out.

First impressions: this is genuinely useful. You define a simple YAML config (Python version, dependencies, test command), and contributors can click one button to spin up an isolated environment and run acceptance tests locally. No more "works on my machine" excuses.

But here's where it got annoying: I set up the config for our project (Python 3.11, Poetry dependencies, pytest), sent it to a teammate to test. They opened the project in EasyAccept, clicked "Run Acceptance," and... it immediately failed with a cryptic error about "virtualenv command not found."

My first dumb move: I figured they didn't have virtualenv installed globally. Had them run pip install virtualenv, brew install python-virtualenv, even manually set PATH. Same error.

What I eventually realized: EasyAccept uses its own bundled Python environment, not the system Python. It doesn't automatically inherit PATH settings or globally installed tools. The error wasn't missing virtualenv—it was that the app's internal Python couldn't find the Poetry executable.

What actually fixed it:

  1. Opened EasyAccept Preferences > Environment
  2. Added the path to Poetry under "Custom Executable Paths" (/Users/username/.local/bin for Poetry)
  3. Restarted the app, re-ran the acceptance suite—worked perfectly

Here's Apple's docs on environment variables and the official EasyAccept guide on custom paths.

Quick checklist if you try it:

  • ✅ If tools fail with "command not found," check EasyAccept's custom paths in Preferences
  • ✅ Add ~/.local/bin (Poetry), /opt/homebrew/bin (Homebrew), or other custom locations
  • ✅ The app bundles its own Python—it doesn't use your shell's PATH
  • ✅ Config file supports environment: section to set variables per project
  • ✅ First run on a project takes a minute to build the environment; subsequent runs are instant

I found this page with the download and requirements—clean source, provides SHA-256 checksums. The GitHub repo has example configs.

Once running, the workflow is smooth. Contributors now test locally with one click, and the GitHub integration automatically comments on PRs with pass/fail results. Saved us from merging a PR that would've broken in production due to a missing dependency.

Anyway, if you maintain Python projects with multiple contributors, this is worth a look. Just remember to add those custom paths or it'll complain about missing tools. Let me know if you try the Conda support—curious how that works.

Catch you later!

Top comments (0)