About Selenium:
優(yōu)勢:
1. 記錄測試過程中,所見 即是所得,selenium 的所有內(nèi)部程序都是用Javascipt編寫的。
[Javascrīpt: 由Netscape Communications 和Sun Micorsystems公司共同開發(fā)的一種描述語言,與Java 的關(guān)系比較松散。Javascrīpt 能為Web頁添加基本的聯(lián)機應(yīng)用程序和功能,但它不是一種真正的面向?qū)ο笳Z言。
它的工作特點是,當(dāng)client端發(fā)出一個JS的請求時,它不必從web server下載,而直接由瀏覽器做出響應(yīng)。]
2. 支持多種操作系統(tǒng),如windows, Mac,Linux,也支持多種瀏覽器,如IE,F(xiàn)irefox, Mozilla.
若使用Selenium IDE進行web 自動記錄測試用例錄制,只能是在Firefox (筆者還沒試過Mozilla,嘿嘿)是先錄制好腳本,再在其它瀏覽器執(zhí)行測試用例,進行測試。
3. 執(zhí)行兩種開發(fā)腳本,test runner,需要安裝Selenium Core,執(zhí)行的文件為.HTML后綴名。另一種是driven(腳本語言編寫),支持多種語言:JAVA,.NET, Perl, Python, Ruby.(在下用的是ruby, 沒辦法,誰叫它既簡潔又明了呢!^ ^)
劣勢:
較難處理邏輯關(guān)系強的業(yè)務(wù)測試。
Selenium 實質(zhì):
通過HTTP協(xié)議,發(fā)送請求來完成測試用例的。
Selenium命令:只有兩種
1. 操作(action):用于模擬用戶與web的交互。
2. 斷言(assertion):驗證一個命令的預(yù)期結(jié)果。(類似于watir^ ^)
Selenium 的組成:
Selenium IDE:firefox 的 plug-in。 是瀏覽器的工具,不能安裝在IE上。
Selenium Core:純粹由Javascrīpt組成的,有assertion機制的test suit runnner.
Selenium Remote Control:
一個代理與控制端, 可代替Selenium core 和IDE 的client端。
下載地址:http://www.openqa.org/
一個使用Selenium IDE的測試例子腳本:
class NewTest
def test_foo
open "/intl/zh-CN/"
assertTitle "Google"
type "q", "selenium"
clickAndWait "btnG"
assertTitle "selenium - Google 搜索"
clickAndWait "link=高級搜索"
assertTitle "Google 高級搜索"
type "as_epq", "iccer"
select "lr", "label=簡體中文"
clickAndWait "btnG"
assertTitle "selenium "iccer" - Google 搜索"
click "link=測試| 軟件測試| 軟件缺陷跟蹤| 軟件配置工具| 測試用例設(shè)計| Web測試 ..."
end
end
將腳本拷下,存為.HTML文檔,再在firefox的selenium IDE工作中打開,執(zhí)行OK了。(執(zhí)行不了多試幾次吧。^ ^)