2010-06-07 99 views
3

我想用硒/ JUnit的使用如何在運行時以編程方式更改Firefox配置?

href="http://firemobilesimulator.org/?%A5%C0%A5%A6%A5%F3%A5%ED%A1%BC%A5%C9"> FireMobileSimulator plugin

鑑於該插件可以模擬多個不同的手機做一些移動仿真測試,我想通過測試交換到能夠循環根據需要輸出設備。

被仿真的設備由兩個配置選項控制。能夠在運行時以編程方式處理這些代碼會很方便,但我不確定如何去做。我的google-fu讓我失望。 任何人都可以提供解決方案嗎?

回答

0

我希望能夠在不啓用Cookie的情況下測試應用程序,而無需維護Firefox配置文件。我發現firefox接受一個簡單的配置文件,只包含prefs.js,它只包含設置user_pref(\"network.cookie.cookieBehavior\", 2);。所以我想出了一個小腳本來啓動硒服務器。這仍然不是理想的,因爲測試前提條件不應該在服務器啓動,但腳本至少減少維護一個或多個完整的Firefox配置文件的努力。它可以運行在Firefox 3.6/linux下,也可能與老版本的Firefox版本一起運行。

仍然需要的插件沒有集成。我完全不知道哪些步驟需要使用腳本「安裝」和配置插件,但也許有初始化extensions.iniextensions/目錄的可能性,可能還有更多。

該腳本假定當前目錄中有一個包含selenium-server.jar的「lib」目錄。

#!/bin/sh 
set -x 

# create firefox profile, cookies disabled 
d=`mktemp -d -t ffp.XXXXX` 
trap "rm -rf \"$d\"; exit" 0 1 2 3 15 
echo "user_pref(\"network.cookie.cookieBehavior\", 2);" > "$d/prefs.js" 

java -jar lib/selenium-server.jar -firefoxProfileTemplate "$d" 
+0

我有一個用我需要的擴展設置的配置文件,啓動一種啓用的設備是我現在可以做的事情(使用user.js設置首選項)。我可以通過每次重新啓動Firefox來切換設備類型,並使用類似於您發佈的腳本的方式更新此文件(非常感謝,順便說一下)。這將是一個解決方案。如果可以選擇更改而不必重新啓動FF,那將是很好的選擇。在這一點上,我認爲添加一個新的xul文件,並在現有插件的下拉菜單中看起來像我將嘗試的下一個選項。 – 2010-06-09 01:28:32

相關問題