test.script_helper has a couple of dedicated functions to launch a Python interpreter instance in a subprocess. Unfortunately, it is little used and most test modules use their own ad hoc calls to subprocess instead.
Remedying the situation would require:
- adding functions to script_helper (currently, the available functions merge stdout and stderr together, which is clearly undesireable)
- perhaps improve the existing functions (kill_python() does a strange dance instead of calling communicate() on the subprocess.Popen object, is there a reason for that?)
- convert most uses of subprocess.<some_func>([sys.executable, ...]) in the test suite to use script_helper instead
This was suggested by Nick in issue477863. |