Для того чтобы сохранить вывод информации (логи) при использовании pytest-xdist, можно воспользоваться опцией `--result-log=<path>` при запуске pytest. Эта опция позволяет указать путь к файлу, в который будет записываться весь вывод информации о выполнении тестов.
Например, чтобы сохранить вывод логов всех тестов в файл `results.log`, можно воспользоваться следующей командой:
```
pytest -n auto --result-log=results.log
```
Таким образом, все логи всех тестов будут записаны в файл `results.log`.
Что касается сохранения вывода в файл в параллельном режиме тестирования, проблема может возникать из-за совместного доступа к файлу из нескольких процессов, что может привести к ошибкам или непредсказуемому поведению. Для решения этой проблемы можно воспользоваться библиотекой `pytest.file` для безопасной записи в файл из нескольких процессов.
Один из способов использования `pytest.file` для записи логов в файл в параллельном режиме:
1. Установить и импортировать библиотеку `pytest.file` в ваш тестовый проект.
2. В тестовом файле использовать `pytest.file` для записи логов в файл в безопасном режиме.
Пример:
```python
import pytest
from filelock import FileLock
def test_example(output_file):
with FileLock(output_file + ".lock"):
with open(output_file, "a") as f:
f.write("Some log message\n")
```
Этот код будет записывать логи в файл `output.log` без проблем в параллельном режиме выполнения тестов.
Вы можете адаптировать этот пример под свои потребности и требования вашего тестового проекта.