У меня есть программное обеспечение, состоящее из двух половинок: один - это python, запущенный на первом компьютере, другой - cpp, работающий на втором. Они обмениваются данными через последовательный порт (tty).Протестируйте программу, которая использует tty stdin и stdout
Я хотел бы протестировать python на моем компьютере, подав ему правильные данные и посмотреть, будет ли он вести себя так, как ожидалось.
Я начал использовать подпроцесс, но затем возникла проблема: какой stdin и stdout я должен поставить?
cStringIO
не работает, потому что нет fileno()
PIPE не работает либо потому, что select.select()
говорит, что есть что-то читать, даже если ничего не на самом деле послал
Есть ли у вас какие-то намеки? Есть ли поддельный модуль tty, который я могу использовать?
Возможно, вы можете «имитировать» их и определить «return_value». – Farhadix
* "' select.select() 'говорит, что есть что прочитать, даже если ничего не отправлено" * - что возвращает 'os.read' в этом случае? Вы пробовали модули 'pexpect',' pty'? – jfs