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

  簡(jiǎn)介:軟件自動(dòng)化回歸測(cè)試是軟件工程實(shí)踐中的重要發(fā)展趨勢(shì)之一。目前業(yè)內(nèi)主流的商業(yè)自動(dòng)化測(cè)試工具和開放源代碼測(cè)試工具,都需要自動(dòng)化測(cè)試人員熟悉開發(fā)編程語(yǔ)言。但是過(guò)高的編程門檻讓很大一部分的業(yè)務(wù)測(cè)試人員只能對(duì)自動(dòng)化測(cè)試駐足遙望。為解決該群體的困擾,本文將介紹如何讓不熟悉編程的業(yè)務(wù)測(cè)試人員也能編寫出類似傳統(tǒng)功能測(cè)試用例的自動(dòng)化測(cè)試用例,從而掃除自動(dòng)化測(cè)試的技術(shù)障礙。

  本文適用于需要為測(cè)試團(tuán)隊(duì)開發(fā)自動(dòng)化回歸測(cè)試框架的測(cè)試設(shè)計(jì)開發(fā)人員。目前業(yè)內(nèi)主流的商業(yè)自動(dòng)化測(cè)試工具和開放源代碼測(cè)試工具,都需要測(cè)試人員熟悉開發(fā)編程語(yǔ)言。但是過(guò)高的編程門檻讓很多測(cè)試人員只能對(duì)自動(dòng)化測(cè)試駐足遙望。為解決該群體的困擾,本文將介紹一種基于XML維護(hù)自動(dòng)化測(cè)試腳本的自動(dòng)化測(cè)試框架,并詳細(xì)描述了其中的技術(shù)實(shí)現(xiàn)細(xì)節(jié)。XML具有編寫簡(jiǎn)單,易于在任何程序中讀寫數(shù)據(jù)等特性,這使得XML成為了數(shù)據(jù)交換的公共語(yǔ)言。使用基于XML的Selenium自動(dòng)化測(cè)試框架,可以讓不熟悉編程的測(cè)試人員快速編寫出類似傳統(tǒng)功能測(cè)試用例的自動(dòng)化測(cè)試用例,從而掃除自動(dòng)化測(cè)試的技術(shù)障礙。

  本文首先會(huì)對(duì)比一下業(yè)內(nèi)主流的自動(dòng)化測(cè)試工具,簡(jiǎn)單分析測(cè)試人員使用這些工具時(shí)存在的問(wèn)題。然后以測(cè)試人員編寫的一份傳統(tǒng)測(cè)試用例為例子,演示如何使用Selenium為其編寫自動(dòng)化測(cè)試腳本文件。接著,介紹了如何開發(fā)基于XML的Selenium自動(dòng)化測(cè)試框架。后,簡(jiǎn)單介紹了一下如何為基于XML的Selenium自動(dòng)化測(cè)試框架編寫更多的特性。通過(guò)比較兩種自動(dòng)化測(cè)試實(shí)現(xiàn)方式,使用XML維護(hù)Selenium自動(dòng)化測(cè)試腳本的優(yōu)勢(shì)一覽無(wú)余的展示出來(lái)。

  Web 應(yīng)用自動(dòng)化回歸測(cè)試工具一覽

  隨著軟件公司的發(fā)展,產(chǎn)品線不斷擴(kuò)大,軟件新版本不斷推出,支持的平臺(tái)越來(lái)越豐富,如何高效、快速的對(duì)軟件產(chǎn)品進(jìn)行測(cè)試成為軟件測(cè)試團(tuán)隊(duì)的新挑戰(zhàn)。越來(lái)越多的項(xiàng)目組在考慮對(duì)軟件軟件產(chǎn)品進(jìn)行自動(dòng)化回歸測(cè)試,考慮選取適合自己項(xiàng)目組的自動(dòng)化工具。面對(duì)數(shù)目繁多、各式各樣的自動(dòng)化工具,選擇也不是件很容易的事情。測(cè)試人員耳熟能詳?shù)臏y(cè)試工具如下表:

表格 1. 自動(dòng)化測(cè)試工具

  如上表所示,開源的有Selenium、Watir等,商業(yè)的測(cè)試工具如Rational Functional Tester、Rational Robot、QTP、SilkTest等等。開源工具使用成本比較低,但功能不如商業(yè)工具豐富。商業(yè)工具可以提供強(qiáng)大的錄制功能,為初學(xué)者所喜愛,但錄制腳本并不是自動(dòng)化測(cè)試優(yōu)方案。錄制腳本中的測(cè)試數(shù)據(jù)和腳本程序混雜在一起,很難進(jìn)行維護(hù);此外,當(dāng)測(cè)試用例發(fā)生較大的變更時(shí),維護(hù)用例和重新錄制用例所花費(fèi)的精力不分上下。值得一提的是,RFT作為IBM Rational產(chǎn)品家族的重要組成部分,吸引了大量的測(cè)試人員使用該工具。IBM Frame框架,更是讓RFT測(cè)試腳本開發(fā)效率倍增,您們可以再 developerWorks上面發(fā)現(xiàn)很多關(guān)于這個(gè)框架的文章。以Selenium為代表的開源工具,也吸引了大量的測(cè)試人員,developerWorks上也發(fā)表了很多文章,如《使用分層的Selenium框架進(jìn)行復(fù)雜 Web 應(yīng)用的自動(dòng)測(cè)試》等等。但是,不管使用什么樣的工具,都需要測(cè)試人員熟悉開發(fā)編程語(yǔ)言。編程門檻讓很大一部分的熟悉業(yè)務(wù)的測(cè)試人員只能對(duì)自動(dòng)化測(cè)試駐足遙望。那么,如何讓不熟悉編程的測(cè)試人員也能編寫自動(dòng)化回歸測(cè)試用例呢?

  業(yè)務(wù)測(cè)試人員擅長(zhǎng)什么

  顯然,測(cè)試人員十分熟悉業(yè)務(wù),擅長(zhǎng)編寫傳統(tǒng)的功能測(cè)試用例文檔。本文會(huì)給出一份簡(jiǎn)化的測(cè)試用例:在搜索引擎谷歌站點(diǎn)查詢IBM開發(fā)者社區(qū),如下表:

表格 2. 測(cè)試用例

  該測(cè)試用例只包括測(cè)試步驟,每個(gè)測(cè)試步驟又分成若干組成部分:步驟編號(hào)、測(cè)試步驟、期望結(jié)果、實(shí)際結(jié)果、執(zhí)行狀態(tài)等。很顯然,業(yè)務(wù)測(cè)試人員肯定會(huì)寫出比這復(fù)雜得多的用例。我們用這份簡(jiǎn)單的測(cè)試做演示使用。下面演示如何對(duì)這個(gè)用例做自動(dòng)化測(cè)試。

  使用 Selenium 為測(cè)試用例編寫自動(dòng)化腳本

  我們先以開源的 Selenium 工具為例,開發(fā)上述用例的自動(dòng)化測(cè)試腳本。Selenium 包含 Selenium-IDE、Selenium Remote Control、Selenium WebDriver 和 Selenium Grid,他們共同組成了強(qiáng)大的自動(dòng)化測(cè)試工具。Selenium RC 和 Selenium WebDriver 都可以使用 Selenium Sever,Selenium Server 還包括內(nèi)建的 Grid 功能特性。如果瀏覽器和測(cè)試用例運(yùn)行在相同的機(jī)器上并且測(cè)試用例完全基于 WebDriver API 編寫,可以直接使用 WebDriver 驅(qū)動(dòng)瀏覽器,而不必使用 Selenium Server。在特定情況下,比如計(jì)劃使用 Selenium Grid 創(chuàng)建分布式自動(dòng)化測(cè)試環(huán)境、或需要連接到安裝特別版本瀏覽器的遠(yuǎn)程機(jī)器上執(zhí)行測(cè)試用例腳本,必須使用 Selenium Server。下面分別簡(jiǎn)單介紹一下各個(gè)組件:

  ● Selenium 2(又名 Selenium WebDriver):Selenium 2.0 的主要新特性是集成了 Selenium WebDriver API。WebDriver 被設(shè)計(jì)用于提供簡(jiǎn)化精煉的編程接口,并解決了在 Selenium RC 中的一些限制。WebDriver 可以更好的支持使用 AJAX 技術(shù)的動(dòng)態(tài)網(wǎng)頁(yè)?偟膩(lái)說(shuō),WebDriver 提供設(shè)計(jì)良好的面向?qū)ο蟮慕涌诤透倪M(jìn)的對(duì)動(dòng)態(tài)網(wǎng)頁(yè)支持,是 Selenium 的未來(lái)發(fā)展方向。

  ● Selenium 1(Selenium Remote Control):曾是 Selenium 的主要組成部分,現(xiàn)已經(jīng)正式被 Selenium 官方棄用。替代者為 Selenium 2(Selenium WebDriver)。更多詳細(xì)內(nèi)容,請(qǐng)參考 Selenium 項(xiàng)目簡(jiǎn)史。

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