Я пытаюсь запустить тест (интеграцию?) в моем приложении, чтобы убедиться, что он фактически копирует ожидаемую строку в буфер обмена с помощью pyperclip
.
Эта часть работает на моей машине разработки (Windows 10); но терпит неудачу на travis-ci, где я получаю следующее в моем журнале заданий travis.
self = <pyperclip.init_no_clipboard.<locals>.ClipboardUnavailable object at 0x7ff0cd743588>
args = ('7 809823 102890 string 291',), kwargs = {}
def __call__(self, *args, **kwargs):
> raise PyperclipException(EXCEPT_MSG)
E pyperclip.PyperclipException:
E Pyperclip could not find a copy/paste mechanism for your system.
E For more information, please visit https://pyperclip.readthedocs.io/en/latest/introduction.html#not-implemented-error
../../../virtualenv/python3.7.1/lib/python3.7/site-packages/pyperclip/__init__.py:301: PyperclipException
Согласно документации pyperclip, это происходит на Linux, когда нет механизма копирования/вставки. Решение состоит в том, чтобы установить один из следующих (цитируя pyperclip
docs):
sudo apt-get install xsel
для установки утилиты xsel.sudo apt-get install xclip
для установки утилиты xclip.pip install gtk
для установки модуля gtk Python.pip install PyQt4
для установки модуля Python PyQt4.
Итак, в моем файле .travis.yml
у меня есть
before_install:
- sudo apt-get install xclip
Я также пробовал xsel
с теми же результатами.
Поскольку система на travis — Ubuntu 16.04.6, я попытался добавить sudo apt-get install python3-pyperclip
к ключу before_install
с тем же результатом.
Мне не удалось установить ни gtk
, ни PyQt4
, добавив их в ключ install
в .travis.yml
.
install:
- pip install -r requirements_dev.txt
- pip install PyQt4
# or
- pip install gtk
Поскольку они оба приводят к следующей ошибке:
Could not find a version that satisfies the requirement gtk (from versions: )
No matching distribution found for gtk
The command "pip install gtk" failed and exited with 1 during .
К этому моменту мой before_install
выглядит так:
- sudo apt-get install xclip
- sudo apt-get install xsel
- sudo apt-get install python3-pyperclip
- sudo apt-get install gtk2.0
Это кажется излишним (и все еще не работает); но в настоящее время у меня нет идей о том, как пройти этот тест. Любые указатели будут очень признательны.
Спасибо