Opera + Selenium + Python 3. Проблемы с запуском теста

opera
unittest
python
webdriver
chrome
Теги: #<Tag:0x00007fedb7617388> #<Tag:0x00007fedb7617248> #<Tag:0x00007fedb76170e0> #<Tag:0x00007fedb7616f78> #<Tag:0x00007fedb7616e38>

(Владимир Лапчинский) #1

Использую sel + py3 + unittest для тестирования бизнес платформы. Никаких проблем с запуском тестов через Chrome/Fox нет, но с Opera столкнулся с тем, что тест даже не проваливается на сайт. Плюс никаких ошибок в лог не выводит - просто висит. Из за того, что инит не доходит даже до WebDriverWait тест не вываливается даже по TimeOut. Драйвер 0.22 скачан с https://github.com/operasoftware/operachromiumdriver/releases и добавлен в PATH

class UITestToolkit(object):
	def __init__(self):
		print("----------------------------------------", flush=True)
		print(TextColors.WARNING + "UITestToolkit init START" + TextColors.ENDC, flush=True)
		print("", flush=True)
		self.driver = webdriver.Chrome(r'C:\browser_drivers\operadriver.exe')
		printOk("Webdriver init")
		self.driver.maximize_window()
		printOk("Maximaze window")
		self.wait = WebDriverWait(self.driver, 40)
		printOk("WebDriverWait init")
		self.action = action_chains.ActionChains(self.driver)
		printOk("ActionChains init")
		print("", flush=True)
		print(TextColors.WARNING + "UITestToolkit init FINISH" + TextColors.ENDC, flush=True)
		print("----------------------------------------", flush=True)

	def setSite(self, url):
		self.driver.get(url)
		print(
			"Get URL = " + TextColors.UNDERLINE + url + TextColors.ENDC + " ----> " + TextColors.OKGREEN + "OK" + TextColors.ENDC,
			flush=True)
		print("----------------------------------------", flush=True)


def printOk(text):
	print(str(text) + " " + "---->" + " " + TextColors.OKGREEN + "OK" + TextColors.ENDC, flush=True)

Может кто-то подскажет в какую сторону смотреть хотя бы, т.к. опыта в тестировании у меня немного.
PS: Вывод в консолю сделан не от корчавости рук, а по желанию заказчика, так что не судите строго за это)


#2

@Hexj13
теоретично проблема може бути в версії браузера і версії драйвера. тому раджу в першу чергу перевірити їх.


(Владимир Лапчинский) #3

а не подскажите последнюю стабильную/рабочую версию Opera?


#4

я ( ніколи ) не писав під Оперу.

якщо це правильна ссилка. просто візьміть версію вашого драйвера і загугліть версію опери яка супортить)


#5

OperaChromiumDriver can be used without extra setup on Chromium-based versions of Opera starting from version 26.


(Владимир Лапчинский) #6
self.driver = webdriver.Opera()


self.driver = webdriver.Opera(r"C:\browser_drivers\operadriver.exe")


(Владимир Лапчинский) #7

Прикол именно в том, что можно тестировать под версии Оперы 22-26.
Но сейчас версия уже 43.0
Вопрос заключается именно в том, чтобы тестировать под свежие версии. Если это, конечно, возможно)


#8

спробуй 42 - теоретично може запрацювати. це все що можу порадити.


(Владимир Лапчинский) #9

Поставил предыдущую версию и всё заработало! магия. Спасибо)