Selenium RC服務(wù)器命令行參數(shù)列表
使用示例: java -jar selenium-server.jar [-interactive] [options]
-port <nnnn>: selenium服務(wù)器使用的端口號(默認(rèn) 4444)
-timeout <nnnn>: 我們放棄前(超時(shí))所等待的秒數(shù)
-interactive: 進(jìn)入交互模式。參考教程獲取更多信息
-multiWindow: 進(jìn)入被測試網(wǎng)站都在單獨(dú)窗口打開的模式,并且selenium支持frame
-forcedBrowserMode <browser>: 設(shè)置瀏覽器模式(例如,所有的會(huì)話都使用"*iexplore",不管給getNewBrowserSession傳遞什么參數(shù))
-userExtensions <file>: 指定一個(gè)被載入到selenium的JavaScript文件
-browserSessionReuse: 停止在測試間重新初始化和替換瀏覽器。
-alwaysProxy: 默認(rèn)情況下,我們盡量少的進(jìn)行代理;設(shè)置這個(gè)標(biāo)志將會(huì)強(qiáng)制所有的瀏覽器通訊都通過代理
-firefoxProfileTemplate <dir>: 一般情況,我們在每次啟動(dòng)之前都生成一個(gè)干凈的Firefox設(shè)置。您可以指定一個(gè)目錄來讓我們將您的設(shè)置拷貝過來,代替我們生成的。
-debug: 進(jìn)入debug模式,會(huì)有更多的跟蹤調(diào)試信息
-htmlSuite <browser> <startURL> <suiteFile> <resultFile>: 使用指定的瀏覽器(例如"*firefox")在指定的URL(例如"http://www.google.com"),運(yùn)行一個(gè)單獨(dú)的HTML Selenese (Selenium Core)測試套件然后立即退出。您需要指定HTML測試套件的路徑還有我們將會(huì)生成的HTML測試結(jié)果文件的路徑。
-proxyInjectionMode: 進(jìn)入代理注入模式,這個(gè)模式中selenium服務(wù)器作為進(jìn)入測試程序的所有內(nèi)容的代理服務(wù)器。在這個(gè)模式下,可以跨多個(gè)域訪問,并且還支持如下附加參數(shù):
-dontInjectRegex <regex>: 附加的正則表達(dá)式,代理注入模式能夠使用它決定是否進(jìn)行注入
-userJsInjection <file>: 指定一個(gè)JavaScript文件,將它注入到所有頁面中
-userContentTransformation <regex> <replacement>: 一個(gè)正則表達(dá)式,對所有被測HTML內(nèi)容進(jìn)行匹配;第二個(gè)string將會(huì)對替換所有匹配的內(nèi)容。這個(gè)標(biāo)志能夠使用多次。一個(gè)簡單的適合使用這個(gè)參數(shù)的例子:如果你添加"-userContentTransformation https http"那么測試應(yīng)用程序的HTML中的所有"https"字符串都會(huì)被替換為"http"。
我們還支持兩種Java系統(tǒng)屬性:-Dhttp.proxyHost 和 -Dhttp.proxyPort。使用Selenium服務(wù)器作為代理服務(wù)器,Selenium RC一般重載你的代理服務(wù)器配置。使用這個(gè)參數(shù)適合在使用Selenium服務(wù)器代理的同時(shí)使用你自己的代理服務(wù)器。使用代理服務(wù)器時(shí)這樣配置:
java -Dhttp.proxyHost=myproxy.com -Dhttp.proxyPort=1234 -jar selenium-server.jar
如果你的HTTP代理服務(wù)器需要驗(yàn)證,你還可以在http.proxyHost和http.proxyPort后面設(shè)置-Dhttp.proxyUser 和 -Dhttp.proxyPassword。
java -Dhttp.proxyHost=myproxy.com -Dhttp.proxyPort=1234 -Dhttp.proxyUser=joe -Dhttp.proxyPassword=example -jar selenium-server.jar
總章
前言
在這段期間,我一直在找關(guān)于服務(wù)器的端測試方案,自動(dòng)化工具等等,無意間我發(fā)現(xiàn)了Selenium這個(gè)工具。在試用一段時(shí)間后,覺得Selenium確實(shí)是一個(gè)很不錯(cuò)的Web測試工具。在和強(qiáng)大的QTP比較后,我后還是選擇了使用Selenium,主要的原因是工具使用靈活,簡單,并且完全滿足我的要求。而QTP雖然強(qiáng)大,但它的使用讓我覺得非常繁瑣,而調(diào)試功能也讓我郁悶......鑒于種種這樣的原因,我后選擇了Selenium。
本系列文章主要是總結(jié)我在前一段時(shí)間了解到的關(guān)于Selenium的一些知識。
QTP VS Selenium
下面我想先稍微討論一下這兩個(gè)工具,我主要從功能和文檔資料這兩方面對比QTP和Selenium。
功能
從Web測試的角度,兩個(gè)工具都能滿足正常的測試需求,這個(gè)你無需懷疑!但QTP更強(qiáng)大些,因?yàn)椋?/p>
1.它是商業(yè)軟件,只要你有錢,什么都可以有。
2.它支持對操作Windows窗口,當(dāng)你要從Web上下載一些東西,自然此時(shí)會(huì)彈出一個(gè)“下載框”,由于那個(gè)框框是Windows窗口,Selenium是處理不了的,所以必須通過第三方的腳本處理。
文檔和參考資料資料
如果你這方面的新手,當(dāng)你用QTP/Selenium時(shí),相信書和文檔是你第一樣會(huì)找的東西。在這樣面,QTP使用在中國使用還是蠻廣泛的,資料和書籍也相當(dāng)豐富,而Selenium的資料相對比較少一些,找資料好的地方是官方論壇。
為什么用Selenium
既然上面兩項(xiàng)都是QTP優(yōu)勝一些,為什么我們還是用Selenium,因?yàn)椋?/p>
1.Selenium使用靈活,簡單,寫出的測試案例非常簡潔,優(yōu)美,也易于維護(hù)。
2.Selenium RC支持用多種語言編寫測試案例,你可以用VS2008寫測試案例了: >。
3.如果你有一個(gè)測試平臺,你會(huì)發(fā)現(xiàn)把QTP整合到平臺是很麻煩的事情。
4.......
如果以上Selenium的優(yōu)點(diǎn)不能打動(dòng)你,又或者你是測試新手,對測試經(jīng)驗(yàn)不多,對編程也不熟悉,那么你還是繼續(xù)使用QTP吧,不過相信有,你會(huì)開始嘗試Selenium的。
Selenium名字的來源
在這里,我還想說一下關(guān)于Selenium名字的來源,很有意思的: >:Selenium的中文名為“硒”,是一種化學(xué)元素的名字,它對汞 (Mercury)有天然的解毒作用,實(shí)驗(yàn)表明汞暴露水平越高,硒對汞毒性的拮抗作用越明顯,所以說硒是汞的克星。大家應(yīng)該知道Mercury測試工具系 列吧(QTP,QC,LR,WR...),他們功能強(qiáng)大,但卻價(jià)格不菲,大家對此又愛又恨!故thoughtworks特意把他們的Web開源測試工具命 名為Selenium,以此幫助大家脫離汞毒。