У моего работодателя есть специальный модуль 1 , который мы используем для внутреннего тестирования устройства / системы; однако автор этого модуля здесь больше не работает, и меня попросили протестировать некоторые устройства с ним.
Проблема в том, что pyfoo
требуется древняя версия twisted
(v8.2.0), и он импортирует twisted
в 33 различных файла. Я попытался запустить модульные тесты pyfoo
под v11.0.0 и даже не вижу пакетов TCP SYN 2 . К сожалению, у меня уже есть twisted v11.0.0 , установленный на моем лабораторном сервере linux, и у меня есть собственный код, который зависит от него.
Я ломал голову над этим, но я могу только предложить следующие варианты:
Вариант A . Установите новую версию python, установите virtualenv
, а затем установите старую версию twisted
в virtualenv
. Запускайте тесты, требующие pyfoo
, только под этой новой версией python.
Вариант B . Отредактируйте все 33 файла следующим образом: DIR = '../'; sys.path.insert(0, DIR)
и установите старую версию python в соответствующую директорию под источником.
Вариант C . Попытка исправить pyfoo
для использования v11.0.0 3
Есть ли какие-то варианты, которые мне не хватает? Есть ли более элегантный способ решения этой проблемы, кроме варианта А, описанного выше?
END-ПРИМЕЧАНИЯ:
- Давайте назовем это
pyfoo
ради аргумента
- Модульные тесты подключаются к одному из наших локальных лабораторных серверов и выполняют основные функции telnet
- Эта опция почти не запускается ...
pyfoo
не тривиальна, и у меня есть короткий срок для этой работы.