mirror of
https://github.com/classilla/tenfourfox.git
synced 2025-02-02 07:30:08 +00:00
61 lines
1.7 KiB
Python
61 lines
1.7 KiB
Python
import ConfigParser
|
|
import json
|
|
import os
|
|
import sys
|
|
import unittest
|
|
|
|
from network import get_lan_ip
|
|
|
|
repo_root = os.path.abspath(os.path.join(__file__, "../.."))
|
|
sys.path.insert(1, os.path.join(repo_root, "tools", "webdriver"))
|
|
sys.path.insert(1, os.path.join(repo_root, "tools", "wptserve"))
|
|
from wptserve import server
|
|
from selenium import webdriver
|
|
|
|
|
|
class WebDriverBaseTest(unittest.TestCase):
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
cls.driver = create_driver()
|
|
|
|
cls.webserver = server.WebTestHttpd(host=get_lan_ip())
|
|
cls.webserver.start()
|
|
cls.webserver.where_is = cls.webserver.get_url
|
|
|
|
@classmethod
|
|
def tearDownClass(cls):
|
|
cls.webserver.stop()
|
|
if cls.driver:
|
|
cls.driver.quit()
|
|
|
|
|
|
def create_driver():
|
|
config = ConfigParser.ConfigParser()
|
|
config.read('webdriver.cfg')
|
|
section = os.environ.get("WD_BROWSER", 'firefox')
|
|
if config.has_option(section, 'url'):
|
|
url = config.get(section, "url")
|
|
else:
|
|
url = 'http://127.0.0.1:4444/wd/hub'
|
|
capabilities = None
|
|
if config.has_option(section, 'capabilities'):
|
|
try:
|
|
capabilities = json.loads(config.get(section, "capabilities"))
|
|
except:
|
|
pass
|
|
mode = 'compatibility'
|
|
if config.has_option(section, 'mode'):
|
|
mode = config.get(section, 'mode')
|
|
if section == 'firefox':
|
|
driver = webdriver.Firefox()
|
|
elif section == 'chrome':
|
|
driver = webdriver.Chrome()
|
|
elif section == 'edge':
|
|
driver = webdriver.Remote()
|
|
elif section == 'ie':
|
|
driver = webdriver.Ie()
|
|
elif section == 'selendroid':
|
|
driver = webdriver.Android()
|
|
|
|
return driver
|