2016-09-22 2 views
0

Я некоторое время боролся с этим. Поэтому я использую parametrize в pytest для кросс-браузерного тестирования, написанного на Python. Мне удалось запустить все 3 экземпляра, но в конце теста только экземпляр Chrome закрывается, но Safari и Firefox остаются открытыми. Это мой сценарий:Не удается заставить браузер закрыть в конце сценария автоматизации

@pytest.mark.parametrize("browser", [ 
    ("chrome"), 
    ("firefox"), 
    ("safari")] 
) 
def test_eval(browser): 
    print browser 

    if browser == "chrome": 
     driver = webdriver.Chrome() 
    elif browser == "firefox": 
     caps = DesiredCapabilities.FIREFOX 
     caps["marionette"] = True 
     caps["binary"] = "/Applications/Firefox.app/Contents/MacOS/firefox-bin" 
     driver = webdriver.Firefox(capabilities=caps) 
    elif browser == "safari": 
     os.environ["SELENIUM_SERVER_JAR"] = "selenium-server-standalone-3.0.0-beta2.jar" 
     driver = webdriver.Safari() 

    driver.get("https://www.google.com") 

    driver.quit() 

Заранее благодарим за помощь!

ответ

1

Это может помочь, Difference between webdriver.Dispose(), .Close() and .Quit()

Они предлагают использовать driver.close() для тех, которые ARENT хром

+0

Так что я хотел бы добавить еще один, если структура/Элиф, когда вы закрываете свой драйвер. – BLang

+0

спасибо за ссылку. Я добавил предложения и, похоже, сейчас работает. Благодаря! – Glen

+0

w00t рад своей работе !! – BLang

 Смежные вопросы

  • Нет связанных вопросов^_^