Использование Selenium для тестирования на нескольких версиях браузеров
Мне было интересно, если кто-нибудь знаком с тестированием различных версий браузера с использованием селена. Я знаю, что вы можете указать, какой браузер тестировать (используя * firefox или * iexplore), но что, если у меня установлено несколько версий firefox или IE, и я хотел, чтобы тест запустил определенную версию веб-браузера, чтобы один тест выполнял IE7 а другой может работать против IE8.
В настоящее время мои тесты всегда будут работать с любой версией браузера по умолчанию, которую я установил Я понимаю, что если бы у меня был селен, работающий на нескольких машинах, у каждого из этих блоков могла быть другая версия браузера, и это решило бы мою проблему, но я хотел бы знать, возможно ли то, что я спрашиваю (несколько версий браузера на одной машине),
Благодарю.
3 ответа
На самом деле у вас не может быть столько разных версий браузеров на одной машине - вы не можете иметь разные версии IE одновременно. IETester - вариант, но он не так хорош, как виртуальные машины с разными версиями IE и FF.
В любом случае, лучший подход к этому - использовать разные машины - реальные или виртуальные.
Да, можно запускать тесты в браузере trageted:
У меня установлены тесты 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);
....
}
}
надеюсь это поможет:)
Вы можете передать дополнительный аргумент, который является полным путем к двоичному файлу браузера. Но большинство браузеров требовательны к установке нескольких версий, многие даже не позволяют этого. В этом случае вам действительно нужны отдельные машины, на которых выполняется каждая необходимая среда. Selenium Grid - отличный вариант здесь. Мы используем его для тестирования в IE6, IE7, IE8, FF и Chrome прямо сейчас. Каждый тест указывает, какую среду он хочет, и это возвращается обратно в модуль запуска на конкретной машине.