發(fā)布: 2010-10-26 09:52 | 作者: 不詳 | 來源: 領測測試網(wǎng)采編 | 查看: 57次 | 進入軟件測試論壇討論
Selenium 概述
Selenium 是一種 Web 應用的自動測試工具,通過模擬用戶對 Web 頁面的各種操作,可以精確重現(xiàn)軟件測試人員編寫的 Test Cases 步驟。Selenium 包含三個工具:Selenium-IDE,Selenium-RC 以及 Selenium-Core。其中,Selenium-Core 是驅(qū)動 Selenium 工作的核心部分,作為一個用 JavaScript 編寫的測試引擎,它可以操作 Web 頁面上的各種元素,諸如:點擊按鈕、輸入文本框,以及斷言 Web 頁面上存在某些文本與 Web 元素等。
Selenium-IDE 是一個 Firefox 插件,能夠錄制回放用戶在 Firefox 中的行為,并把所記錄的 Selenese (Selenium Commands) 轉(zhuǎn)化為 Java/C#/Python/Ruby 等語言,在 Selenium-RC 中修改復用。對于較為復雜的 Test Cases,Selenium-IDE 的功能有限,往往用它錄制大致的步驟,再轉(zhuǎn)化為測試人員熟悉的編程語言,在此基礎上完善,形成更為強大且靈活的 Selenium-RC Test Cases。
Selenium-RC(Selenium Remote Control)在 Web 瀏覽器與需要測試的 Web 應用間架設代理服務器(Selenium Server),使得 JavaScript 引擎與被測 Web 應用同源,繞開同源策略的限制(Same Origin Policy),進而取得對 Web 頁面進行各種操作的權限。
Selenium IDE
Selenium-IDE 是一個 Firefox 插件,由"Command(命令/動作)" "Target(目標/對象)"及其"Value(值)"構成三段式腳本語言(Selenese)......
Selenium Core
Selenium Core是一款可以一次組織大量的測試用例來進行Web軟件的功能或系統(tǒng)測試的強大工具......
Selenium RC
Selenium RC支持Java C# php python Ruby Pear等多種編程語言。其中任務一種語言都可以由Selenium IDE的三段測試腳本轉(zhuǎn)換過來。
能把Selenium RC腳本和JUnit單元測試結合起來,既能涵蓋功能測試,又能涵蓋數(shù)據(jù)或后臺Java類測試,從而構成一個完整的Web應該測試解決方案。
1.安裝與入門
首先要安裝JRE,從http://seleniumhq.org/download/下載Selenium RC安裝包,解壓后在E:\selenium\selenium-remote-control-1.0.3\selenium-server-1.0.3目錄下存放了相關的jar包。
2.啟動Selenium RC Server
啟動Selenium RC服務,啟動cmd模式,輸入: java -jar selenium-server.jar -interactive。
4.機理......
Selenium RC Server的操作,在cmd模式下輸入:c:\>cmd=getNewBrowserSession&1=*firefox& 2=http://www.google.com,此時會打開firefox進入google.com主頁。
5.HTTPS的配置
如要能夠運行HTTPS,須對IE進行配置。FireFox已將證書打包入了配置文件中。為IE導入SSL證書,在E:\selenium \selenium-remote-control-1.0.3\selenium-server-1.0.3\sslSupport中將證書 cybervillainsCA.cer導入即可。最后在啟動Selenium RC Server服務時可輸入:java -jar selenium-server.jar -log c:\selenium.log -trustAllSSLCertificates來啟動服務。
6.編寫測試腳本
這里以PHP為例,可將Selenium-IDE錄制的腳本轉(zhuǎn)為php腳本。 通過java -jar selenium-server.jar -log c:\selenium.log -trustAllSSLCertificates啟動服務。在cmd模式中輸入c:\>phpunit e:\selenium\selenium-remote-control-1.0.3\selenium-php-client-driver-1.0.1/GoogleTest.php運行php測試腳本。
7.如何與Junit集成......
Selenium Grid
Selenium Grid是Selenium的一個擴展,提供了一個類似于網(wǎng)絡集線器(hub)的遠程測試控制器,能夠測試請求發(fā)送到若干個遠程機器的Selenium-RC上......