9)verifyChecked(locator)
用于校驗checkbox是否被選中
10)verifyAttribute(locator, pattern)
校驗指定的元素屬性值,是否匹配pattern
例如:verifyAttribute(link=All Search Results for "bike"@href, 'glob:*/search/bike?c=0*')
即校驗指定的link的href屬性是否匹配"glob:*/search/bike?c=0*"
11)fireEvent(locator,eventName)
用于調用locator指定的元素的指定eventName的事件,例如:
fireEvent(userLoginName,blur),即調用文本框userLoginName的失去焦點事件
以上是較為常用的幾個方法,還有許多方法的詳細介紹可以參見:http://seleniumhq.org/projects/core/reference.html
3、pattern的寫法
在firefox的selenium IDE中,方法的參數pattern,即匹配的文本,共有三種匹配方式:
1)exact:string
精確匹配,必須完全匹配當前字符串
2)regexp:regexp
正則表達式匹配,這里主要是針對javascript中支持的正則表達式
3)glob:pattern
通配符匹配,*表示任意長度任意字符串,?表示任何單個字符,
例如方法 verifyLocation(*/search?key=bike&c=*),即開頭的域名部分和之后可能附帶的一些參數都做了忽略。
需要說明的是:這里pattern的寫法,僅僅是在IDE工具,即用瀏覽器以html方式直接運行腳本執行測試案例的方式中才有效。在后臺test case中,只能使用equals或者matches的方式,才能驗證。
二、Selenium Test Case介紹
相關文檔:http://seleniumhq.org/documentation/tutorials/
1、首先,在命令行輸入以下命令,啟動Selenium服務:
i. 多窗口模式
java -jar selenium-server.jar -multiWindow
ii. 交互模式
java -jar selenium-server.jar -interactive
說明:(1)交互模式,用戶可以在server的窗口下,一條命令一條命令的輸入,查看瀏覽器上的動作以及server日志。
其命令如下:
a. 初次啟動,打開新窗口:
cmd=getNewBrowserSession&1=*iexplore&2=http://test.offerme.com.au
(新建瀏覽器session,指定瀏覽器是IE,同時指定訪問的域名:http://test.offerme.com.au)
b. 以后再次加載頁面,則可以省去域名
cmd=open&1=/cat/all?sn=0
(打開鏈接/cat/all?sn=0)
c. 給指定文本框輸入指定值
cmd=type&1=q&2=bike
(給id為q的文本框輸入值bike)
(2)多窗口模式,可以在后臺寫java的test case,讓程序自動執行一整套操作。
例:
public void testRegister() throws Exception {
selenium.setSpeed("1000"); selenium.open("http://zhidao.baidu.com"); selenium.type("ikword", "abc"); selenium.close(); } |
2、在項目中導入selenium-java-client-driver.jar、selenium-java-client-driver-sources.jar、selenium-java-client-driver-tests.jar三個包
3、Test Case寫法,可以繼承com.thoughtworks.selenium.TestCase類,也可以繼承 com.thoughtworks.selenium.SeleneseTestCase(它是TestCase的子類,對setUp()方法做了重寫,更為方便)
寫法跟JUnit測試相似,需要寫一個setUp()方法,在此方法中可以對selenium對象實例化以并且啟動。
例:
public void setUp() throws Exception {
selenium = new DefaultSelenium("localhost",4444, "*iehta", "http://localhost:8080/"); selenium.start(); } |
文章來源于領測軟件測試網 http://www.kjueaiud.com/