def run(cmd, logfile):
    p = subprocess.Popen(cmd, shell=True, universal_newlines=True, stdout=
        logfile)
p.wait()
return p

def runTest(path, flags, name):
    with open(name, 'w') as log:
        print('Calling executable A', file=log)
a_ret = run(path + 'executable_a_name' + flags, log)
print('Calling executable B', file=log)
b_ret = run(path + 'executable_b_name' + flags, log)
print('More stuff', file=log)
Сохранение stdout из subprocess.Popen в файл, а также запись дополнительных данных в файл