selenium + python: запуск тестов на удаленной машине.

Всем привет,
Я занимаюсь автоматизацие на #webdriver + #python , и возник вопрос. Как мне запустить мои тесты на чужой машине, где вообще не установлено ничего - только нужный браузер?
Может есть тула, или мне как то конфиг прописывать, чтобы по сценарию из какого-либо файла (ini например) выполнялись сценарии - например скачать python, настроить окружение, скачать тесты, запустить тесты.
Может кто-то поделится опытом? Спасибо!

UPD: Просто задача стоит следующая - например, кто-то (напр. разработчик) просит мои тесты на Python и хочет запустить их на своей машине. Как это сделать с минимальными усилиями для разработчика?

выложить на гитхаб )

1 лайк

@VitaliyKoryakov а у этого разработчика например голая винда и только браузер, в котором эти тесты будут гоняться :slight_smile: как настроить окружение для этих тестов?

Можно попробовать запаковать их через py2exe, он туда запихнет все библиотеки нужные для запуска тестов, и не нужно будет ставить python на систему вообще, главное рабочий драйвер браузера. Или firefox до 46 версии.

Если честно, то поставленные рамки - далеки от реальности. Но какой вопрос - такой и ответ.

  1. Делаем батник prepare_env.bat
  2. Гуглим wget for windows
  3. wget https://www.python.org/ftp/python/2.7.12/python-2.7.12.msi
  4. Using Windows Installer | Python.org - учимся пользоваться виндовым инсталлером, дабы установить в сайлент-режиме все необходимое
  5. wget somedomain.com
  6. unzip mytests.zip && cd mytests
  7. pip install -r requirements.txt
  8. echo ENV was prepaired
  9. pause

Ну и т.д., думаю логика предельно понятна.
Некоторые библиотеки сложно подружить с py2exe или cx_Freeze, поэтому когда-то делал подобное решение для разворачивания.

Надо создать раздел: “учимся пользоваться windows” для подобных вопросов, ящетаю.

2 лайка

А ещё вы можете развернуть удаленное тестовое окружение. И запускать тесты там. И тогда совершенно не важно какая ОС и т. д. у того, кто запускает тесты.

амазон серверы + jenkins +selenium docker(с их помощью разворачиваете Selenium Grid +всё это удобно маштабировать)+ заводите отдельную ноду реализованную на mac(apple станция) и подключаете ее к к хабу развернутому в docker контейнере на амазон сервере. В Jenkins делаете Job. который разворачивает Docker контейнер в котором прогоняются тесты на Python’е. И наслаждаетесь.