您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 >
使用XML維護Selenium自動化測試腳本
作者:網(wǎng)絡轉載 發(fā)布時間:[ 2013/6/7 10:46:27 ] 推薦標簽:

  下面怎么做呢?傳統(tǒng)的測試用例文檔存儲方式在不同的公司里差異很大,有的是 Word 文檔,有的是 Excel 文檔,也有維護在配置管理站點的,比如 IBM 的 Rational ClearQuest、開源的 TestLink 等等。Word 和 Excel 在維護用例額外的步驟信息方面都不夠靈活簡便,我們決定使用 XML 文檔。下面是使用 XML 維護本文中演示用例。

圖 1. 瀏覽器打開測試用例

  可以看出來,這和傳統(tǒng)的用例看起來很像。這樣的用例編寫方式,閱讀起來非常容易。同事在會議室一起評審這個用例時,很容易能看明白這個測試用例的執(zhí)行行為。但是又與傳統(tǒng)測試用例不同的是,它包含了額外的能被自動化工具識別的步驟信息。我們使用 XML 編輯器打開這一個測試用例文件,如下:

  清單 4. XML 格式的自動化測試腳本

<?xml version="1.0" encoding="UTF-8"?>
 <?xml-stylesheet type="text/xsl" href="./SeleniumUseCase.xsl"?>
 <SUITE name="IBM 開發(fā)者社區(qū) 演示測試用例">
 <SETTINGS browser='*firefox' seleniumServer='127.0.0.1'
   seleniumPort='4444' application_url='http://www.google.com/'>
  </SETTINGS>
 <TEST name="在谷歌中查詢 IBM 開發(fā)者網(wǎng)絡社區(qū)" timeout='1'>

   <STEPS>
 <STEP index="1" type="Type.INPUT" name="在谷歌查詢輸入框,
輸入 ibm developerworks cn">
 <XPATH>//input[@name='q']</XPATH>
     <VALUE>ibm developerworks cn</VALUE>
    </STEP>
 <STEP index="2" type="Type.CLICK" name="單擊查詢按鈕,執(zhí)行查詢">
     <XPATH>//input[@name='btnK']</XPATH>
    </STEP>
 <STEP index='3' type='Type.CLASS' name="測試截圖函數(shù)">
 <METHOD>captureScreenshotRemote</METHOD>
 <ARGUMENT> 查詢后截圖測試 Remote</ARGUMENT>
    </STEP>
   </STEPS>
  </TEST>
 </SUITE>

  下面對上述 xml 進行解釋:

  第一行是 XML 聲明。它定義 XML 的版本 (1.0) 和所使用的編碼(UTF-8)。緊接著是指定的處理指令。設置的 XLST 轉換,可以使測試用例 XML 文件能被瀏覽器打開并顯示為 HTML 形式。XSLT 是一個 W3C 標準,可將 XML 轉換為其他的格式,比如 HTML 格式。本文提供的下載附件里包括引用的 XSL,這里不再贅述。每個 SUITE 元素可以指定用例執(zhí)行的配置信息,比如瀏覽器和 Selenium 信息等。每個 TEST 元素對應著一個測試用例,每個 TEST 包含若干 STEP 元素,對應著不同的測試步驟。每個 STEP 步驟包括步驟編號 index、 步驟類型 type、步驟名稱 name,也包含頁面控件定位信息 XPATH 和測試數(shù)據(jù) VALUE 等。

  下文來演示,如何使用自動化測試工具開發(fā)自定義的測試框架來執(zhí)行上述 XML 用例。本中定位控件元素的使用的是 XPath,我們以 Selenium Server 為例進行自動化框架的開發(fā)。IBM 公司的 Rational Functional Tester 工具也是支持 XPATH 定位控件元素的,請參看 developerWorks 文章《使用 XPath 在 Rational Functional Tester 中動態(tài)識別對象》。讀者如果感興趣,可自行基于 RFT 開發(fā)自己的自動化測試框架。

  XML 用例驅(qū)動 Selenium 框架開發(fā)

  我們創(chuàng)建另一個 JUnit 4 單元測試類:dw.xml.DWloginXML.java,依次編寫 @BeforeClass、@Test、@AfterClass 方法。讀者可自行下載本文附帶的源代碼項目導入到自己的 Eclipse 開發(fā)工作區(qū)。下面對代碼進行講解:

  1、解析測試用例 XML,讀取執(zhí)行設置信息

  使用 Dom4J 來解析 XML 用例腳本文件,ucXMLFile 變量存放測試用例文件路徑。首先解析 SETTINGS 元素,讀取其中的屬性設置?梢钥闯觯褂 XML 維護測試用例,能輕松維護 Selenium Server 的相關信息。如果想換其他瀏覽器執(zhí)行這個用例,只需修改 XML 文件中 SETTINGS 元素的 browser 屬性,比如把“*iexplore”改為“*firefox”,運行的時候會啟動 firefox 瀏覽器來執(zhí)行該用例,而不需要改動任何 Java 程序代碼。同樣,如果喜歡使用谷歌 Chrome 瀏覽器,則需要設置為“*googlechrome”。當然,需要預先在啟動 Selenium Server 的機器上安裝相應的瀏覽器軟件。

上一頁1234下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd