• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      通過Selenium實現(xiàn)Web自動化測試的研究

      2017-04-27 14:21:28何煌
      電子技術(shù)與軟件工程 2016年15期
      關(guān)鍵詞:自動化測試

      摘 要 本文對自動化測試概念發(fā)展演變過程進(jìn)行了簡要概述,結(jié)合業(yè)界流行工具Selenium以實例進(jìn)行描述,以期達(dá)到理論結(jié)合實際效果,同時也便于讀者理解和應(yīng)用。

      【關(guān)鍵詞】Selenium WEB測試 自動化測試

      隨著大數(shù)據(jù)時代到來客戶需求變化導(dǎo)致軟件開發(fā)模型多樣化,巨大的數(shù)據(jù)量和重復(fù)性的輸入輸出工作給手工測試帶來了極大的困擾,特別在產(chǎn)品版本升級的回歸測試,耗費大量人力物力。在此背景下,自動化測試?yán)砟詈蛯嵺`應(yīng)運而生。并形成了先進(jìn)基礎(chǔ)理論和框架和眾多工具,極大提高了測試效率。自動腳本不僅可用于單元測試,還可用于集成測試,進(jìn)而進(jìn)行整體功能測試。

      1 自動化測試概念

      1.1 定義

      自動化測試是測試過程中僅需由測試者開發(fā)測試運行腳本,不需用戶參與過程即可自動執(zhí)行測試程序。所開發(fā)代碼可以用于單元測試、功能測試,以及集成測試,從而完成整個系統(tǒng)的測試工作??傊詣踊瘻y試的過程就是用代碼測試源程序,指導(dǎo)測試過程,代替人工測試。

      1.2 自動化測試發(fā)展階段

      1.2.1 簡單錄制回放階段

      利用工具錄制對所需測試操作,執(zhí)行腳本,實現(xiàn)自動化回放。

      1.2.2 數(shù)據(jù)驅(qū)動階段

      使用實例作測試數(shù)據(jù),采用專用格式存儲和讀取,在測試過程中調(diào)用不同測試數(shù)據(jù)及相關(guān)變量。

      1.2.3 關(guān)鍵字驅(qū)動階段

      以數(shù)據(jù)驅(qū)動為基礎(chǔ),在測試工具提取出改進(jìn)的測試用例:將數(shù)據(jù)與腳本分離,把內(nèi)部元素和外部對象分離,從而也把測試描述與具體實現(xiàn)方式區(qū)分。

      1.2.4 模型驅(qū)動階段

      通過不同測試場景設(shè)置相應(yīng)條件,每一個模型對應(yīng)一個測試場景。

      1.3 自動化測試框架

      它就是由多個自動化測試基本模塊、管理模塊及統(tǒng)計模塊等所組成的工具集合。測試框架分為二類:Selenium等提供最基礎(chǔ)的自動化功能測試模塊,通過模擬鼠標(biāo)鍵盤,點擊或操作該頁面中的測試元素,驗證該元素屬性是否正確,判定程序正確性;Robot等可提供自動化測試執(zhí)行和管理模塊,不提供基礎(chǔ)支撐,僅用于組織管理和執(zhí)行那些已有的測試用例。

      2 自動化測試工具Selenium簡介

      2.1 Selenium組成

      Selenium由ThoughtWorks推出的開源測試工具,針對功能測試或驗收測試中JUnit無法解決的測試問題,用戶與Web系統(tǒng)交互時所需的回歸測試、集成測試或冒煙測試。此工具支持多種瀏覽器,也支持各類編程語言。

      它集成了WebDriver,提供支持在復(fù)雜頁面中重新加載以及動態(tài)網(wǎng)頁等不能處理的情況。最新的Selenium2.9.1由以下內(nèi)容組成: IDE、Core、Remote Control以及Grid四大模塊。

      2.2 Selenium工作原理

      Selenium具體的架構(gòu)如下:

      前端:Firfox、IE、Chrome平臺運行的WebApp;

      中間層:WebDriver;

      后端:Java、Ruby、C#等客戶端。

      2.3 Selenium工作環(huán)境

      開發(fā)環(huán)境:IDE使用Eclipse、NotePad等,開發(fā)語言可使用Java、C#;

      運行環(huán)境:Selenium四大核心、Firefox等瀏覽器;

      其它工具:部署:Ant;集成:Junit4、TestNG。

      3 具體測試過程

      3.1 分析系統(tǒng)測試需求

      以郵箱——用戶登錄為例,需求如下:

      (1)系統(tǒng)帳號、登錄密碼正確與否;

      (2)系統(tǒng)登錄后是否有跳轉(zhuǎn)頁面;

      (3)Session過時后有否提示重新登錄;

      (4)登錄用戶相關(guān)信息的驗證。

      3.2 測試用例

      設(shè)計測試用例:

      需求描述:登錄賬戶、密碼是否正確; 前置條件:處于登錄界面

      基本操作 1.輸入賬號密碼;2.點擊登錄按鈕;

      用例01,Test001/123456 登錄并跳轉(zhuǎn) 匹配用例

      用例02,Test001/654321 提示密碼錯 斷言失敗

      3.3 錄制測試過程

      主要步驟:

      (1)在Firefox添加Selenium IDE插件;

      (2)Selenium IDE的Base URL輸入訪問地址并點擊錄制;

      (3)登錄頁面輸入賬號、密碼,點擊登錄按鈕,進(jìn)入主面;

      (4)Selenium會自動記錄并通過以下參數(shù)定位網(wǎng)頁元素并而完成腳本錄制:

      open /

      selectFrame login_frame

      type id#u Test001

      type id#p pw123456

      clickAndWait id#login_button

      備注:

      Command:執(zhí)行的操作 Target:操作對象 Value:輸入值;

      3.4 生成測試腳本

      在Selenium IDE中,通過菜單 “Export TestCase As…”,選擇“Java/ JUni t 4/ WebDriver”,將IDE與Selenium2.9相結(jié)合,完成IDE向Webdriver的Java腳本轉(zhuǎn)化,可以生成Junit4框架文件。

      3.5 執(zhí)行并分析測試結(jié)果

      編輯測試腳本后,在Eclipse運行,WebDriver會自動啟動Firefox,在頁面賬號和密碼處分別自動輸入用例Test001數(shù)據(jù)項,并自動點擊“登錄”按鈕,跳轉(zhuǎn)至主頁面。測試結(jié)果是“登錄并跳轉(zhuǎn)成功”,符合預(yù)期,測試通過。修改測試用例腳本,修改密碼,再次運行時測試不通過。

      4 總結(jié)

      本文定義了自動化測試,回顧了發(fā)展歷程,簡棕了Selenium構(gòu)成、工作原理及環(huán)境,結(jié)合實例列出過程。盡管自動化測試針對重復(fù)性測試工作,但是測試人員主要工作都用在編寫、調(diào)試以及維護(hù)測試代碼,以至偏離原有目標(biāo),故實踐中,應(yīng)正確認(rèn)識自動化測試優(yōu)缺點,將手工與自動有機結(jié)合達(dá)到最佳效益。

      參考文獻(xiàn)

      [1]Glenford J.Myers,Tom Badgett,Corey Sandler.軟件測試的藝術(shù)(原書第3版) [M].北京:機械工業(yè)出版社,2013.

      [2]陸璐,王柏勇.軟件自動化測試技術(shù)[M].北京:清華大學(xué)出版社,2006.

      [3]溫素劍.零成本實現(xiàn)Web自動化測試——基于Selenium和Bromine[M].北京:電子工業(yè)出版社,2011.

      作者簡介

      何煌(1973-),男,廣東省興寧市人。軟件工程碩士學(xué)位,現(xiàn)為廣東創(chuàng)新科技學(xué)院講師。研究方向為軟件工程。

      作者單位

      廣東創(chuàng)新科技學(xué)院 廣東省東莞市 523960

      猜你喜歡
      自動化測試
      基于Java反射的APP自動化混合測試框架的研究與實現(xiàn)
      移動通信(2016年22期)2017-03-07 22:22:59
      Hadoop性能測試自動化研究
      數(shù)據(jù)驅(qū)動和關(guān)鍵字驅(qū)動的研究與應(yīng)用
      軟件(2016年4期)2017-01-20 09:56:35
      淺談空調(diào)控制器自動化測試
      東方教育(2016年7期)2017-01-17 21:28:10
      基于多總線結(jié)構(gòu)的電路板測試系統(tǒng)設(shè)計研究
      價值工程(2016年32期)2016-12-20 20:32:01
      航空航天與國防電子新形勢下自動化測試系統(tǒng)的應(yīng)用
      價值工程(2016年29期)2016-11-14 02:40:46
      基于CTI—TET和SeleniumWebdriver的Web應(yīng)用自動化測試框架的設(shè)計與實現(xiàn)
      軟件工程(2016年8期)2016-10-25 15:45:45
      自動化測試實現(xiàn)研究
      中國市場(2016年34期)2016-10-15 04:20:40
      天線伺服自動化測試系統(tǒng)的設(shè)計與應(yīng)用
      一種航空交換機中CAN總線的自動化測試方法
      孙吴县| 盐津县| 丰镇市| 绥棱县| 涞源县| 桑植县| 梅河口市| 文昌市| 白朗县| 张家港市| 乡城县| 阿克| 金湖县| 泽普县| 康保县| 清涧县| 青浦区| 浠水县| 武陟县| 吉安县| 华蓥市| 三原县| 阿克陶县| 徐水县| 榆社县| 翼城县| 扶风县| 峨山| 涿州市| 黔东| 平利县| 乌苏市| 中宁县| 揭西县| 扶余县| 高阳县| 宁德市| 巴彦淖尔市| 嘉义县| 闻喜县| 改则县|