【问题标题】:Using Selenium to test on multiple versions of browsers使用 Selenium 在多个版本的浏览器上进行测试
【发布时间】:2023-03-30 16:30:01
【问题描述】:

我想知道是否有人熟悉使用 selenium 测试不同的浏览器版本。我知道您可以指定要测试的浏览器(使用 *firefox 或 *iexplore),但是如果我安装了多个版本的 firefox 或 IE,并且我想要一个测试来启动特定的 Web 浏览器版本,这样一个测试将运行 IE7另一个可能会针对 IE8。

目前,我的测试将始终针对我安装的任何默认浏览器版本运行。我意识到如果我在多台机器上运行 selenium,每个盒子都可以有不同的浏览器版本,这将解决我的问题,但我想知道我要问的是什么(一台机器上有多个浏览器版本)是可能的.

谢谢。

【问题讨论】:

    标签: selenium selenium-rc


    【解决方案1】:

    是的,它可以在被跟踪的浏览器上运行测试:

    我的测试中安装了 FF3.6 和 FF4.1,因为 FF4.1 中没有对 Selenium IDE 的良好支持,我想针对 FF3.6.17 运行测试。这是我的工作:

    。将环境变量 DEFAULT_BROWSER 添加为

      "*custom path/to/firefox 3.6/firefox.exe"
    

    $TESTS_SELENIUM_BROWSER= getenv('DEFAULT_BROWSER') ? ...

    在php代码中

    。把测试类写成

    class myTests extends  PHPUnit_Extensions_SeleniumTestCase{
     .... 
     protected function setUp()
        {       
            $this->setBrowser($TESTS_SELENIUM_BROWSER);
                ....
        } 
    
     }
    

    希望这会有所帮助:)

    【讨论】:

      【解决方案2】:

      您可以传递一个附加参数,即浏览器二进制文件的完整路径。但是,大多数浏览器都对安装多个版本很挑剔,很多甚至不允许。在这种情况下,您确实需要单独的机器来运行您需要的每个环境。 Selenium Grid 是一个很好的选择。我们现在用它在 IE6、IE7、IE8、FF 和 Chrome 中进行测试。每个测试都指定了它想要的环境,并将其映射回特定机器上的启动器。

      【讨论】:

        【解决方案3】:

        实际上,你不可能在一台机器上拥有这么多不同版本的浏览器——你不能同时拥有不同的 IE 版本。 IETester 是一种选择,但不如拥有不同版本的 IE 和 FF 的虚拟机。

        无论如何,最好的方法是使用不同的机器——无论是真实的还是虚拟的

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-11-02
          • 2012-08-03
          • 1970-01-01
          • 1970-01-01
          • 2016-08-16
          • 2017-01-13
          • 2011-03-22
          • 2012-04-03
          相关资源
          最近更新 更多