В настоящее время я использую Robotframework в Eclipse на ОС Windows 10.Я использую внешнюю библиотеку Python, которая позволяет ученикам и преподавателям использовать эту извлеченную библиотеку для подключения к нашим аппаратным устройствам.Я автоматизирую извлечения из основного пакета сайта, сделанные нашими разработчиками.Если к USB-портам ПК подключено более одного устройства, код выполняет следующие действия:
x = input («Выберите одно устройство:»)
selected = int (x)
Это вызывает запрос терминала, поэтому пользователь должен ввести, например, 0 или 1, а затем нажать клавишу ВВОД.Ответ пользователя позволит коду продолжить обработку соединения с выбранным устройством.Обратите внимание, это приглашение не является графическим интерфейсом.Поэтому, когда я запускаю Robotframework, он выполняет шаги вплоть до того момента, когда он запрашивает.
Кажется, это должно быть довольно легко, но я не могу понять это.Поскольку вы находитесь внутри фрагмента кода, который ожидает ввода, как вы заставляете RobotFramework что-то с ним делать?
Редактировать: Мне приходит в голову, что, возможно, есть способ выполнить отложенный шаг Robotframework, который запускает внешнюю команду python через определенное время, чтобы сгенерировать '0' и ответ клавиши RETURN.У меня был файл python, сделанный из импорта библиотеки pynput.py, которая, кажется, работает из командной строки (выводит 0 или 1 и перевод строки).Должен быть более простой способ, я думаю, но я не знаю, что это такое.
Редактировать: Могу ли я запустить ключевое слово из прослушивателя, который следит за командной строкой, а ключевое слово запускает другой файл python для подачи приглашения?Если я заставлю это работать, то все, что мне нужно сделать, это оставить устройства на USB-порту (или, если на то пошло, концентратор) и выбрать устройства, на которых я хочу провести дальнейшее тестирование.Наши устройства также поддерживаются Blooth tooth, но мне нужно выполнить тесты USB и BLE, чтобы проверить наши извлечения Python, которые могут использовать учителя и ученики.
Редактировать: Другой вариант - использовать программно-программируемый концентратор и выбрать USB-порт с определенным устройством, но я стараюсь этого избегать.