【问题标题】:why the code //RemoteWebDriver driver= new FirefoxDriver(); is not used instead of //WebDriver driver= new FirefoxDriver()?为什么代码 //RemoteWebDriver driver= new FirefoxDriver();不使用而不是 //WebDriver driver= new FirefoxDriver()?
【发布时间】:2021-09-15 20:06:25
【问题描述】:

为什么不使用代码//RemoteWebDriver driver= new FirefoxDriver(); 而不是//WebDriver driver= new FirefoxDriver() 来创建驱动程序对象?

我觉得 RemoteWebDriver 为驱动程序实例提供了比 webdriver 引用更多的功能。有人可以澄清一下吗?

【问题讨论】:

标签: selenium


【解决方案1】:

WebDriver 将在代码实例化它的计算机上启动 Web 浏览器。 例如。如果你写了一点代码,然后运行它来看看你是怎么做的,浏览器会在你的屏幕上弹出,你会看到 WebDriver 开始操作那个 web 浏览器窗口(如果一切顺利!)

除了我将在下面解释的一个主要例外,RemoteWebDriver 会做同样的事情;它将打开并操作浏览器窗口(如果一切顺利!)一般来说,您实际上可以使用 RemoteWebDriver 切换 WebDriver 的实例化(嗯,在某些高级情况下您可能无法做到这一点)主要区别是 RemoteWebDriver 将打开和控制 Web 浏览器的请求发送到服务器,因此您通常不会看到浏览器打开并执行此操作。

Selenium 服务器是运行并等待 RemoteWebDriver 连接的程序。您可以在本地计算机上运行它来测试它。如果您设置并运行它,您将能够创建 RemoteWebDriver 并看到 Selenium 服务器接受连接并允许您控制 Web 浏览器窗口。

使用 RemoteWebDriver 的好处?

如果您确实可以连接到本地 Selenium 服务器,那么您可以确信您拥有连接到远程 Selenium 服务器所需的知识和技能,甚至可以连接到像 SauceLabs(为您托管 Selenium)这样的付费服务,它允许您可以在许多操作系统和许多浏览器上运行大量测试,而无需实际维护或安装其中任何一个(Linux、Windows 8、Windows 10、MacOS、Andriod、IOS、IE、Firefox、Opera、Safari、Firefox Mobile、等)此时您需要研究异步运行测试。您不必一次运行一个,因此可以在很短的时间内测试大量的操作系统/浏览器变体。

【讨论】:

    【解决方案2】:

    当某些东西仅用于客户端/服务器通信时,这是什么意思?

    当您使用具有一个集线器和多个客户端的 Selenium 网格时,您调用 RemoteWebDriver 通过它实例化服务器并向其发出请求。

    【讨论】:

      【解决方案3】:

      WebDriver 是 selenium 中的一个接口,它扩展了 SearchContext 接口(selenium 中的超级接口) 其中 RemoteWebdriver 是一个实现 WebDriver 的类, 当我们要在远程环境(硒网格)中执行测试时,我们可以使用 RemoteWebdriver。 WebDriver 接口将在本地调用驱动程序, 目前在自动化中,我们大多只使用 WebDriver。 网格没有广泛使用。

      WebDriver driver=new ChromeDriver() ;

      driver 是用于访问 chromedriver 类的引用变量。 使用驱动实例,我们可以访问 WebDriver 接口中所有可用的未实现方法,也可以访问 chromedriver 类中可用的所有属性。

      更多详情

      https://www.softwaretestingmaterial.com/webdriver-driver-new-firefoxdriver/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-10-04
        • 1970-01-01
        • 2020-07-22
        • 1970-01-01
        • 2018-03-22
        • 1970-01-01
        • 2013-12-23
        • 1970-01-01
        相关资源
        最近更新 更多