当前位置: 首页 > 知识库问答 >
问题:

Mac上Safari的selenium web驱动程序无法访问浏览器异常

汪正雅
2023-03-14

我已经编写了简单的代码,在Mac上使用selenium web驱动程序在eclipse中打开Safari web浏览器。还在哪里寻找Safari exe以及在哪里放置它在mac plzz上help.thanks

package sanityTest;
  import org.openqa.selenium.WebDriver;
  import org.openqa.selenium.safari.SafariDriver;

  public class AdminLogin {
     public static void main(String[]args){
        WebDriver driver=new SafariDriver();
        //driver.close();//close the browser
    }

}

我收到了这个错误

下面的强文本错误

2016年9月24日凌晨1:22:31 org.openqa.selenium.safari。SafariDriverServer启动信息:服务器启动于端口3897 2016年9月24日凌晨1:22:31 org.openqa.selenium.safari。SafariDriverCommandExecutor启动信息:启动Safari 2016年9月24日凌晨1:22:31 org.openqa.selenium.Safari。SafariDriverCommandExecutor启动信息:等待SafariDriver连接2016年9月24日凌晨1:22:41 org.openqa.selenium.safari。SafariDriverCommandExecutor停止信息:关闭2016年9月24日凌晨1:22:41 org.openqa.selenium.safari。SafariDriverCommandExecutor停止信息:停止Safari 2016年9月24日上午1:22:41 org.openqa.selenium.Safari。SafariDriverCommandExecutor停止信息:停止服务器2016年9月24日上午1:22:41 org.openqa.selenium.safari。SafariDriverServer停止信息:停止服务器2016年9月24日凌晨1:22:41 org.openqa.selenium.safari。SafariDriverCommandExecutor停止信息:关闭完成2016年9月24日凌晨1:22:41 org.openqa.selenium.safari。SafariDriverCommandExecutor停止信息:关闭2016年9月24日凌晨1:22:41 org.openqa.selenium.safari。SafariDriverCommandExecutor停止信息:停止服务器2016年9月24日上午1:22:41 org.openqa.selenium.safari。SafariDriverCommandExecutor stop INFO:Shutdown在线程“main”org.openqa.selenium.remote中发生完全异常。UnreachableBrowserException:10080毫秒后无法连接到SafariDriver构建信息:版本:“未知”,版本:“c7b525d”,时间:“2016-09-01 14:52:30-0700”系统信息:主机:“Vishals MacBook Pro”。本地”,ip:“192.168.0.26”,操作系统。名称:“Mac OS X”,操作系统。拱门:“x86_64”,操作系统。版本:“10.11.5”,java。版本:“1.8.0_101”驱动程序信息:驱动程序。版本:SafariDriver at org.openqa.selenium.safari.SafariDriverCommandExecutor.start(SafariDriverCommandExecutor.html" target="_blank">java:118)at org.openqa.selenium.safari.SafariDriver.startClient(SafariDriver.java:116)at org.openqa.selenium.remote.RemoteWebDriver.startClient(RemoteWebDriver.java:284)at org.openqa.selenium.remote.RemoteWebDriver.java:117)org.openqa.selenium.safari.SafariDriver。(SafariDriver.java:78)位于org.openqa.selenium.safari.SafariDriver。(SafariDriver.java:58)位于sanityTest.AdminLogin.main(AdminLogin.java:10)

共有2个答案

岳城
2023-03-14

我在mac机器上启动Safari浏览器时也遇到了问题,下面的解决方案帮助了我。每次我调用驱动程序初始化时,浏览器都会打开,但URL不会被击中。我正在使用Page对象工厂,带有selenium、Java、maven和testng。

if (browserType.equals("safari")) {
            // System.setProperty("webdriver.safari.driver", workingDir +
            // "//driver//SafariDriverServer.exe");
            System.setProperty("webdriver.safari.driver",
                    "/driver/SafariDriver.safariextz");
            System.setProperty("webdriver.safari.noinstall", "true");
            DesiredCapabilities desiredCapabilities = DesiredCapabilities
                    .safari();
            SafariOptions safariOptions = new SafariOptions();
            safariOptions.setUseCleanSession(true);
            safariOptions.getUseCleanSession();
            safariOptions.setUseCleanSession(true);
            desiredCapabilities.setCapability(SafariOptions.CAPABILITY,
                    safariOptions);

            // deleteCookies();
            driver = new EventFiringWebDriver(new SafariDriver());

            ThreadDriver.set(driver);
            // driver.manage().window().setSize(new Dimension(1024, 850));
            getDriver().manage().timeouts().implicitlyWait(3,
                    TimeUnit.SECONDS);
            wait = new WebDriverWait(driver, 30);
        }
顾喜
2023-03-14

Mac OS上的Safari WebDriver当前要求您编译、签名和安装特定的WebDriver浏览器扩展,如此处所述。这需要你注册一个免费的苹果开发者帐户,并获得一个测试密钥来签署扩展。

幸运的是,这种远程自动化Safari浏览器的方法目前正在过渡。随着Safari 10的即将发布,Webkit开发人员正在为Safari浏览器本身构建本地WebDriver支持。在我看来,目前自动化Safari的最简单方法是下载Safari技术预览,然后使用Selenium的当前快照版本启动WebDriver。您可以在这里找到有关如何使用Safari新的WebDriver功能的说明。

 类似资料:
  • 我们正在使用Selenium和Java来自动化我们的Web应用程序。我们有工作代码可以在Windows操作系统上运行三种浏览器(即Chrome,Firefox-最新版本)的自动测试脚本。 我们已经得到了在MAC操作系统--Safari浏览器上运行自动化测试脚本的需求。 环境详细信息: MAC OS版本:macOS Sierra版本10.12.5 Safari浏览器版本:10.1.1(12603.2

  • 最近我换了电脑,从那以后我不能用硒启动chrome。我也尝试过Firefox,但浏览器实例就是无法启动。 我得到以下错误: 我安装了最新的chrome版本和chrome驱动程序 编辑:尝试@b0sss解决方案后,我收到以下错误。

  • 我无法使用selenium webdriver 3.4.0启动Firefox浏览器

  • 我试图运行一些单元测试使用Selenium网络驱动程序和C#。NET for Firefox浏览器,但我无法做到这一点(Chrome和IE11浏览器工作顺利)。 以下是我收集的信息: 操作系统:Windows 10企业版 Gecko驱动程序版本:geckodriver-v0。17.0-win32 Mozilla Firefox版本:54.0.1(32位) 已在“C:\LEO\SELENIUM C\

  • 问题内容: 我正在尝试遵循Selenium Webdrive教程 http://www.toolsqa.com/selenium-webdriver/headless-browser-testing-selenium- webdriver/ 有一个简单的测试,这里是步骤: 开启网页http://google.com 获取页面标题。 搜索“ Selenium” 再次检查页面标题。 从类代码示例开始,

  • 我正在使用ChromeDriver V2.24,我的系统中有Chrome Browser52(未安装,可执行文件)。 NosuchSessionException:没有这样的会话 控制台: 注意:在Windows安全更新之前,当我使用ChromeDriver3.1和Chrome58时,我的脚本运行良好。更新后,我无法启动Chrome浏览器,因为它不是启动浏览器,而是在后台运行。