Мне нужно использовать Selenium RC на автономном сервере Ubuntu для запуска тестов на веб-сайте с использованием внешнего прокси-сервера для имитации пользователя в другой стране.
Чтобы протестировать процесс, я создал очень простой тестовый скрипт PHPUnit, который в основном выполняет:
$this->setBrowser("*firefox");
$this->setBrowserUrl("http://www.ipchicken.com/");
$this->open("/");
$this->assertTrue($this->isTextPresent(<proxy ip>));
Я запускаю Selenium RC, используя следующие директивы прокси-сервера (на прокси-сервере нет аутентификации):
export DISPLAY=":99" && java -Dhttp.proxyHost=<proxy ip> -Dhttp.proxyPort=<proxy port> -jar /var/lib/selenium/selenium-server.jar -avoidProxy
но мой тестовый скрипт не соответствует утверждению. Если я изменю тест на утверждение IP-адреса моего сервера Selenium, утверждение пройдет, и мне кажется, что Selenium отправляет «открытый» запрос непосредственно ipchicken.com, а не отправляет его через прокси-сервер.
Селен-сервер может получить доступ к прокси-серверу. ОК - я проверил это с помощью простого скрипта PHP Curl. Если я запрашиваю ipchicken.com, используя Curl, через прокси-сервер, он просто возвращает IP-адрес прокси-сервера.