簡體   English   中英

python selenium 網絡驅動程序 safari 驅動程序

[英]python selenium webdriver safari driver

快速提問,我一直在構建一個 python selenium 框架來測試我們的網站。 我已經成功實現了 Firefox、Chrome 和 IE 進行瀏覽器測試。 但是一直在尋找Safari驅動。 我知道在官方文檔中它簡要描述了它的不兼容性並且不支持 Safari。 你們會建議我用 python 和 selenium 來測試 Safari 功能。 是否可以使用 python?

我已經搜索和搜索,似乎找不到任何相關的 Safari 驅動程序。

提前致謝,

本地SafariDriver的綁定尚未實現。 如果您想要此功能,請在 Selenium 的錯誤跟蹤器中添加以下問題:

看看這篇博文 它是針對 Java 的,但是 Python 的過程應該大致相同。

我自己沒有使用過它,但是有一個Safari 驅動程序可以作為瀏覽器擴展實現,它將 javascript 注入每個頁面。

它有一些限制,例如無法處理警報,但希望它有所幫助。

Safari 驅動程序是 Safari 擴展程序,您可以在 seleniumhq.org 網站的下載部分找到一個鏈接。 http://docs.seleniumhq.org/download/

您還可以查看 Github 的源代碼並構建它。

Safari 的 Python Selenium 綁定並未真正實現,但使用 Z93F725A07423FE1C88ZF 實現。 因此,您需要 Selenium-standalone-Server jar 文件。 它必須在運行腳本的機器上的 PATH 中。

Python 支持運行 Safari 測試,您可以在此博客上找到python 示例

另一個示例如何在 selenium 網格上調用 Safari 測試,請注意 selenium 網格和節點應該正在運行。

# -*- coding: utf-8 -*-
import unittest
from selenium import webdriver
from selenium.webdriver.common.keys import Keys

class PythonOrgSearch(unittest.TestCase):

def setUp(self):
    self.driver = webdriver.Remote(command_executor='http://localhost:4444/wd/hub',desired_capabilities={'browserName':'safari','version':'safariversion','platform':'MAC'})

def test_search_in_python_org(self):
    driver = self.driver
    driver.get("http://www.python.org")
    self.assertIn("Python", driver.title)
    driver.maximize_window()
    elem = driver.find_element_by_name("q")
    elem.send_keys("pycon")
    elem.send_keys(Keys.RETURN)
    assert "No results found." not in driver.page_source


def tearDown(self):
    self.driver.quit()

if __name__ == "__main__":
    unittest.main()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM