On Thu, Feb 16, 2017 at 4:38 PM, Radek Duda <[email protected]> wrote: > Dear avocado users and developers, > I have made a testcase in which is executed nc process in run function : > (simplified version): > > from avocado.utils import process > > def run(vt_test, test_params, env): > cmd = "nc -l %s" % test_params['some_port'] > nc_process = process.SubProcess(cmd) > return > > after testcase is executed, nc does not terminate and is still present. To > avoid this I have to kill the process e.g. by > process.safe_kill(nc_process_pid, signal.SIGKILL)
Are you running the process with `nc_process.run()`? It's expected to wait for the process to finish. https://github.com/avocado-framework/avocado/blob/master/avocado/utils/process.py#L596-L643 > > It is pretty awkward to close the process manually particularly in case of > complex testcase code > Shouldn't be the subprocess killed automatically after test exits? > After all its called SubProcess > > > regards, > > Radek Duda
