Я пытаюсь экспортировать скрипт Selenium в Python из Selenium IDE. Однако я использую несколько функций user-extension.js (которые работают в Selenium IDE). После экспорта в Python сгенерированный скрипт выглядит так:
from selenium import selenium
import unittest, time, re
class new_selenium_test(unittest.TestCase):
def setUp(self):
self.verificationErrors = []
self.selenium = selenium("localhost", 4444, "*chrome", "http://localhost/")
self.selenium.start()
def test_selenium_assert_something(self):
sel = self.selenium
# sel.assert_something("abc=1", "x=126")
def tearDown(self):
self.selenium.stop()
self.assertEqual([], self.verificationErrors)
if __name__ == "__main__":
unittest.main()
Обратите внимание, что самая интересная строка, где я вызываю свой код расширения пользователя (функция «assert_something», которая отображается на функцию «assertSomething» в моем файле user-extensions.js), закомментирована. Когда я активирую эту строку и запускаю скрипт на сервере Selenium следующим образом:
py.test new-selenium-test.py
Я получаю такую ошибку:
AttributeError: 'selenium' object has no attribute 'assert_something'
Есть идеи, почему Selenium IDE комментирует мой пользовательский вызов и почему он не выполняет его из Python?
Обратите внимание, что я запустил сервер Selenium следующим образом:
java -jar selenium-server-standalone-2.0rc2.jar -userExtensions /path/user-extensions.js
Спасибо за вашу помощь!