Отредактируйте файл excel на сервере узлов с помощью webdriver

У меня есть сервер TeamCity (который в моем случае тоже Selenium Hub), который запускает мои тестовые примеры Selenium-Python и запускает его на другом сервере Windows (узле).

Ниже приведен типичный тестовый пример, которого я хочу достичь в конфигурации узлового узла селена.

  1. Нажмите «Загрузить шаблон» в приложении, которое загружает книгу Excel.
  2. Получите путь к последнему загруженному файлу в Chrome / Downloads (я получаю это с помощью фрагмента кода ниже)
  3. Передайте этот путь к файлу в библиотеку excel writer, которая, в свою очередь, заполнит некоторые данные
  4. Вернитесь в приложение, нажмите «Загрузить шаблон», чтобы открыть окно загрузки файла, и я использую сценарий autoit, чтобы передать путь к файлу в это окно и продолжить дальнейшие шаги.

Код для получения последнего загруженного файла на сервере узла:

from selenium import webdriver

driver = webdriver.Chrome()

def get_file_names_chrome():
  if not driver.current_url.startswith("chrome://downloads"):
    driver.get("chrome://downloads/")
  return driver.execute_script("""
          return downloads.Manager.get().items_
          .filter(e => e.state === "COMPLETE")
          .map(e => e.file_url);
          """)


try:
    files = get_file_names_chrome()
    print (files)
finally:
    driver.quit()

На данный момент мой этап сборки TeamCity развертывает исходный код автоматизации на сервере узла и использует powershell для запуска этих тестовых сценариев с узлового сервера. Однако я хочу, чтобы Selenium Hub обрабатывал мои дела и распространял их.

Есть ли другой способ добиться этого?

Привет, Шан! Не могли бы вы подробнее рассказать о процессе командного города? Он просто запускает концентратор для запуска экземпляра на узле или развертывает / строит / запускает тест на узле?

Infern0 31.10.2018 17:41

Sure @ Infern0 На данный момент я развертываю исходный код автоматизации на сервере узла и запускаю тестовые наборы с помощью планировщика задач Windows. Таким образом, этап сборки temacity просто вызывает это расписание задач Windows сразу после развертывания кода.

Shan 25.06.2019 08:27
2
2
210
0

Другие вопросы по теме