Использование Selenium для тестирования в нескольких версиях браузеров

Мне было интересно, знаком ли кто-нибудь с тестированием разных версий браузеров с использованием селена. Я знаю, что вы можете указать, какой браузер тестировать (используя * firefox или * iexplore), но что, если бы у меня было установлено несколько версий firefox или IE, и я хотел бы, чтобы тест запускал определенную версию веб-браузера, чтобы один тест запускал IE7 а другой может работать против IE8.

В настоящее время мои тесты всегда будут работать с любой установленной мной версией браузера по умолчанию. Я понимаю, что если бы у меня был селен, работающий на нескольких машинах, каждый из этих ящиков мог бы иметь другую версию браузера, и это решило бы мою проблему, но я хотел бы знать, возможно ли то, что я прошу (несколько версий браузера на одной машине) .

Спасибо.


person Ali    schedule 14.12.2010    source источник


Ответы (3)


На самом деле у вас не может быть столько разных версий браузеров на одной машине - у вас не может быть разных версий IE одновременно. IETester - вариант, но он не так хорош, как наличие виртуальных машин с разными версиями. IE и FF.

В любом случае лучший подход к этому - использовать разные машины - реальные или виртуальные.

person Sergii Pozharov    schedule 17.12.2010

Вы можете передать дополнительный аргумент - полный путь к двоичному файлу браузера. Но большинство браузеров придирчивы к установке нескольких версий, многие даже не позволяют этого. В этом случае вам действительно нужны отдельные машины, на которых работает каждая среда, которая вам нужна. Selenium Grid - отличный вариант здесь. Мы используем его для тестирования в IE6, IE7, IE8, FF и Chrome прямо сейчас. В каждом тесте указывается, какая среда ему нужна, и которая сопоставляется с программой запуска на конкретной машине.

person nirvdrum    schedule 21.12.2010

Да, можно запускать тесты в целевом браузере:

На моих тестах установлены 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);
            ....
    } 

 }

надеюсь, это поможет :)

person sakhunzai    schedule 07.06.2011