
Возможно ли в Linux запустить веб-браузер с заданным размером окна и URL-адресом, используя терминальную консоль или какой-либо скрипт (например, shell)?
Я хочу протестировать сервер потоковой передачи данных, чтобы узнать, сколько клиентов могут транслировать видео с сервера, а ручной запуск Firefox — довольно утомительная задача.
Любые замечания будут оценены.
решение1
Firefox поддерживаетАргументы командной строки для указания URL, высоты и ширины. Например:
firefox -height 600 -width 800 "example.com"
В зависимости от настроек, это может фактически открыться в новых вкладках. Используйте -new-window "example.com"
для принудительного открытия нового окна.
Обратите внимание, что эти окна фактически запускаются в рамках одного процесса, повторно используя один, если FF уже открыт. По-видимому,Установка размера не сработает, если вы не начинаете новый процесс.(см. комментарии). Необходимо указать -no-remote
для запуска нескольких независимых процессов, и каждый должен использовать другой профиль, который можно указать с помощью -p "profilename"
. Профили должны быть созданы перед использованием.
Например, если бы вы сделали это в цикле (bash):
for i in {1..10}
do
firefox -no-remote -createprofile testprofile$i
firefox -no-remote -p testprofile$i -height 600 -width 800 "example.com"&
done
(Это &
в концезапустить его в фоновом режиме, т. е. не ждите, пока он закроется.)
решение2
Вопрос неясен. Это то, о чем вы спрашиваете?
firefox --no-remote -P testing http://my-url
- Вы можете просто запустить Firefox с помощью
firefox
команды --no-remote
говорит ему запустить новый экземпляр-P testing
говорит ему использовать профиль, который вы назвалитестирование- URLоткрывает экземпляр с указанным URL
Что касается требований к размеру окна, большинство оконных менеджеров запоминают предыдущий размер окна.
решение3
Я не могу дать совет по выбору размера браузера, но вы можете запустить экземпляр Firefox, просто набрав
Firefox "url"
Из командной строки.
Так что если вы хотите запустить, например, 10 экземпляров, вы можете написать одну строку для запуска нескольких вкладок по одному URL-адресу:
для каждого в `seq 1 10`; сделать firefox ; сделано
Я подозреваю, что есть лучшие способы тестирования производительности сайта, не требующие браузера, но я не эксперт, когда дело касается потоковой передачи. WGET и CURL предоставляют функциональность командной строки для получения веб-страниц и могут предоставить более объективный результат (я предполагаю, что вы не хотите тестировать браузер, а графический интерфейс имеет гораздо более высокие накладные расходы)