freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)論文基于selenium框架的web自動化測試系統(tǒng)的設(shè)計與實現(xiàn)-文庫吧

2025-09-03 22:40 本頁面


【正文】 ............................... 37 參考文獻 .................................................................................................................................. 38 致謝 .......................................................................................................................................... 39 浙江財經(jīng)大學(xué)本科生畢業(yè)論文(設(shè)計 ) 1 1 引言 隨著社會的不斷發(fā)展和信息化的不斷普及,各種軟件越來越多,在日常生活中也起著越來越重要的作用,再加上客觀系統(tǒng)的復(fù)雜性,無論經(jīng)驗多豐富的開發(fā)人員、無論采用哪種開發(fā)模型開發(fā)出來的軟件,每個階段的技術(shù)復(fù)審也不可能毫不遺漏地查出和糾正所有的錯誤,因此如何才能把新的軟件做得更穩(wěn)定、錯誤更少是開發(fā)人員非常關(guān)注的一個重要問題。測試是解決以上問題的一個十分有效的手段。統(tǒng)計表明,在典型的軟件開發(fā)項目中,軟件測試工作 量往往占軟件開發(fā)總工作量的 40%以上,當(dāng)然這只是大多數(shù)情況。 測試是軟件能否通向市場的最后也是最重要的一關(guān)。傳統(tǒng)的測試方法是手工測試,目前大部分都是采用此方法,其特點就是簡單,但是它存在的問題非常多。手工測試可能引入人為的輸入錯誤,尤其在數(shù)據(jù)量大的情況下;另外大量重復(fù)性的手工測試可能成本較高,如果考慮軟件發(fā)生改動而需要重復(fù)手工測試的情況,這個成本還會更高;沒有辦法對組件進行隔離的測試,從而導(dǎo)致發(fā)現(xiàn)問題和解決問題的成本都太高。在很多項目中,測試人員的所有任務(wù)實際上都是手動處理的,而實際上有很大一部分重復(fù)性強的 測試工作是可以獨立出來自動實現(xiàn)的。 針對手工測試的缺點,自動化測試應(yīng)運而生。相比手工測試,自動化測試的優(yōu)勢很多;規(guī)范測試流程,提高測試效率、測試覆蓋率等。很多人對自動化測試存在誤區(qū),把其理解為找到一種自動化測試工具,把它應(yīng)用到軟件工程項目中,自動化測試工具只是被看作是一種錄制和回放的工具。事實上自動化測試遠不止這么簡單,錄制和回放僅是自動化測試中的最低級別?,F(xiàn)在常用的是基于數(shù)據(jù)驅(qū)動的測試,它是以數(shù)據(jù)來控制自動化測試的流程和動作的測試。 本次畢業(yè)設(shè)計的目的就是在設(shè)計中實現(xiàn)針對 web 訪問的不同系統(tǒng)、不同業(yè)務(wù)、不 同主流瀏覽器進行自動化測試的開發(fā)、調(diào)試、項目構(gòu)建、部署、運行、監(jiān)控、分析、告警、生成報告等一系列功能的自動化測試系統(tǒng)。并能通過生成的報告對當(dāng)前被測系統(tǒng)提出一些建設(shè)性的改進意見。 浙江財經(jīng)大學(xué)本科生畢業(yè)論文(設(shè)計 ) 2 2 需求分析 正如開發(fā)軟件需要有需求分析一樣,基于數(shù)據(jù)驅(qū)動的自動化測試本質(zhì)上也是開發(fā),所以在制定測試方案之前也需要收集測試需求,這樣才能保證自動化測試的成功。 隨著 IT 技術(shù)的發(fā)展,傳統(tǒng)的開發(fā)人員兼任測試人員的模式已經(jīng)不能滿足需求,目前大多數(shù)較正規(guī)的軟件公司均已采用獨立的測試人員來對軟件進行測試,所以形成了開發(fā)人員、開發(fā)管理者、測試 人員、測試管理者的模式。如圖 21 所示: 圖 21 開發(fā)模式 規(guī)范的測試過程需要上述人員的通力配合,因此在做自動化測試之前可以有一份規(guī)范的文檔,用來描述測試內(nèi)容、人員安排、測試流程、缺陷管理等。其中開發(fā)管理人員和測試管理人員分別作為開發(fā)團隊和測試團隊的接口,協(xié)調(diào)兩個團隊的工作,一般來說開發(fā)人員需要提供自動化測試所需要的數(shù)據(jù)、穩(wěn)定的可執(zhí)行文件等相關(guān)資源,測試人員根據(jù)功能測試用例創(chuàng)建適合做自動化的測試用例,并建立基于測試驅(qū)動的自動化測試工程。 自動化測試工程是建立在自動化測試平臺之上,在自動化測試平臺上做 開發(fā)。測試腳本開發(fā)必須通過詳細、合理的設(shè)計,要對腳本代碼進行劃分,腳本文件或數(shù)據(jù)文件分層管理。這樣有利于自動化腳本的開發(fā)與維護,從而節(jié)省自動化測試的投入成本,也使得不同測試人員或開發(fā)人員可以協(xié)調(diào)開發(fā)腳本。 腳本開發(fā)完成、提交發(fā)布之后,首先是測試人員,測試人員可以運用自動化測試進行回歸測試等,節(jié)約人力成本的效果尤其顯著。其次是開發(fā)人員,開發(fā)人員可以在版本提交測試之前,在開發(fā)環(huán)境進行自動化測試,來確保當(dāng)前的新版本不會影響固有功能的正常使用。工程維護人員也可以進行自動化測試,在系統(tǒng)維護升級之后,對部分系統(tǒng)功浙江財經(jīng)大學(xué)本科生畢業(yè)論文(設(shè)計 ) 3 能進行 自動化測試驗證,提高升級效率。 既要有一個設(shè)計合理的測試腳本運行平臺,又要有一個功能完善的測試執(zhí)行控制平臺,所以建立一個自動化測試平臺就顯得極為重要。 浙江財經(jīng)大學(xué)本科生畢業(yè)論文(設(shè)計 ) 4 3 可行性分析 基于對自動化測試優(yōu)點的分析,很多人對自動化測試存在另一個誤區(qū),認為對于所有的軟件都適合引入自動化測試,且只要引入自動化測試,就會提高測試的效率,降低測試的成本。實際上并非如此,自動化測試也需要開發(fā)和搭建測試框架,創(chuàng)建測試用例,這也就意味著成本的投入。對于一個項目周期很緊的測試項目,按測試方案進行手工測試的效率可能要比自動化測試的效率好得多。 對于一個一次性開發(fā)、沒有后續(xù)版本更新的軟件而言,自動化測試是毫無意義的。但是現(xiàn)在很多軟件都會不斷推出新的版本,在推出新版本的過程中,每次除了測試新加或修改過的模塊,相關(guān)聯(lián)的舊模塊同樣需要測試,才能保證產(chǎn)品的質(zhì)量,這樣就需要做大量的重復(fù)工作,自動化測試的價值就體現(xiàn)在可以創(chuàng)建測試中的可重用模塊,同時還可以覆蓋大部分的功能測試,這樣可以使測試人員從回歸測試中解脫出來,專注于新模塊的測試。所以可以說自動化測試的最大價值在于回歸測試。 因此,對于一個軟件或其中某些模塊是否適合自動化測試必須要先進行可行性分析,以證明 我們所選的測試方法的正確性,通常可進行自動化測試的軟件需要滿足以下幾點: (1)手工測試復(fù)雜度高: (2)所選測試用例,實現(xiàn)自動測試的難度低; (3)軟件用于自動化測試的模塊界面變化相對不大; (4)軟件生命周期長,經(jīng)常推出新的版本; (5)軟件開發(fā)已基本完成,主要用于測試升級版本; (6)所選自動化測試框架必須對所測軟件應(yīng)用界面有有效的支持,且維護管理成本較低。 另外自動化測試前期需要投入時間和一定的成本投入,故不要一開始就期望有高的回報,其效應(yīng) 會在不斷完善積累中顯現(xiàn)。而且不要期待自動化測試可以發(fā)現(xiàn)每個版本中的大部分錯誤,因為自動化測試主要用于回歸測試,而且產(chǎn)品中每個新版本的大部分 bug會在新模塊中出現(xiàn),所以自動化測試在于長期效應(yīng),能保證每個版本產(chǎn)品質(zhì)量的穩(wěn)定。 浙江財經(jīng)大學(xué)本科生畢業(yè)論文(設(shè)計 ) 5 4 自動化測試平臺 自動化測試架構(gòu)一般可以分為上下兩個層次,上層是管理整個自動化測試的開發(fā),執(zhí)行以及維護,在比較龐大的項目中,它體現(xiàn)重要的作用,它可以管理整個自動測試,包括自動化測試用例執(zhí)行的次序、測試腳本的維護、以及集中管理測試用例、測試報告和測試任務(wù)等。下層主要是測試腳本的開發(fā),充分 的使用相關(guān)的測試服務(wù),構(gòu)建測試驅(qū)動,并完成測試業(yè)務(wù)邏輯。 自動化測試平臺一般由管理端和執(zhí)行端組成,由管理端發(fā)出信號通知執(zhí)行端開始執(zhí)行相應(yīng)的測試任務(wù),從而執(zhí)行相應(yīng)的腳本進行測試,并將測試結(jié)果報告管理端。 平臺劃分如圖 41 所示。 圖 41 平臺劃分 本畢業(yè)設(shè)計主要是針對自動化測試平臺的開發(fā)(即測試服務(wù)執(zhí)行端),主要是對執(zhí)行端( ATS)功能的開發(fā)。 ATS 摒棄了錄制和回放的機制,采用主流的測試驅(qū)動的方式進行自動化測試。 測試驅(qū)動是一個自動化測試框架的核心,其決定整個自動化腳本設(shè)計。當(dāng)前比較流行的測試驅(qū)動有數(shù) 據(jù)驅(qū)動和關(guān)鍵字驅(qū)動,使用不同的測試驅(qū)動,關(guān)系到腳本重用率,以及后期的可維護性。而本系統(tǒng)采用數(shù)據(jù)驅(qū)動的自動化測試。 浙江財經(jīng)大學(xué)本科生畢業(yè)論文(設(shè)計 ) 6 5 基于數(shù)據(jù)驅(qū)動自動化測試的實施 基于數(shù)據(jù)驅(qū)動的自動化測試不是簡單的錄制回放,而且通過編程的形式來實現(xiàn)每個自動化測試用例,其中數(shù)據(jù)文件獨立于測試用例,這樣數(shù)據(jù)的更新對整個測試工程的維護會降低到最小,因此創(chuàng)建自動化測試框架需要有一定的編程基礎(chǔ)。 自動化測試系統(tǒng)( ATS)的運行機制如圖 51 所示。 浙江財經(jīng)大學(xué)本科生畢業(yè)論文(設(shè)計 ) 7 S t a r t A t s ( 類 ) T e s t N G ( 框 架 ) S c r i p t ( 腳 本 類 ) P a g e ( 頁 面 對 象 模 型 庫 )U I 驅(qū) 動 層 s e l e n i u m 2 . 0 ( 框 架 )瀏 覽 器1 3 : 執(zhí) 行 后 獲 得 的 原 始 信 息1 7 : 腳 本 運 行 結(jié) 果測 試 報 告8 : 通 過 注 解 ( @ T e s t ) 啟 動9 : 執(zhí) 行 p a g e 層 接 口1 0 : 執(zhí) 行 b a s e B r o w s e 層 接 口1 1 : 調(diào) 用 s e l e n i u m 的 A P I1 2 。 模 擬 手 工 操 作 瀏 覽 器1 8 : 生 成 測 試 報 告1 : 初 始 化 A T S 配 置 文 件2 : 加 載 l o g 4 j 配 置 文 件4 : 加 載 x x x . x m l 到 測 試 套 件 中6 : 啟 動 t e s t n g7 : 解 析 測 試 套 件3 : 動 態(tài) 查 找 x x x . x m l 數(shù) 據(jù) 配 置 文 件5 : 初 始 化 測 試 套 件1 4 : 對 原 始 數(shù) 據(jù) 進 行 處 理1 5 : 對 處 理 后 的 原 始 數(shù) 據(jù) 進 行 匹 配1 6 : 匹 配 結(jié) 果 圖 51 運行機制圖解 (1) 加 載并解析 ATS 平臺配置文件 (2) 加載 , 解析 配置文件 , 并動態(tài)重定向日志文件存儲路徑 (3) 動態(tài)查詢到 數(shù)據(jù)配置文件 浙江財經(jīng)大學(xué)本科生畢業(yè)論文(設(shè)計 ) 8 (4) 加載 數(shù)據(jù)配置文件到測試套件中 (5) 初始化測試套件 (6) 啟動 TestNG 類 (7) testng 框架對測試套件進行解析 (8) testng 框架通過對測試套件中的 數(shù)據(jù)配置文件的解析找到相應(yīng)具有 @Test 注解的類方法并運行 (9) 執(zhí)行頁面對象模型庫中某個頁面對象的方 法如:增加報告,刪除報告等封裝好 的方法 (10) 執(zhí)行 UI 驅(qū)動層中封裝好的針對元素的方法:如 點擊按鈕,給輸入框賦值等 操作 (11) 執(zhí)行 selenium 框架提供的 api方法,如 獲得元素等 (12) 通過 selenium 提供的 api驅(qū)動瀏覽器模擬手工就行操作,如登錄,進入到公 告頁面等 (13) 對頁面進行操作后獲得的反饋原始數(shù)據(jù) (14) 對反饋的原始數(shù)據(jù)進行邏輯處理,取得可用的數(shù)據(jù) (15) 把處理后的數(shù)據(jù)和預(yù)定好的數(shù)據(jù)進行匹配 (16) 反饋匹配后的數(shù)據(jù)給腳本類 (17) 把最 終結(jié)果反饋給 Testng 框架 (18) Tesng 框架根據(jù)獲得的結(jié)果生成相應(yīng)的測試報告 注 : 在 118 步驟之間都會生成相應(yīng)的日志; 在 918 步驟之間都會有可能生成相應(yīng)的截圖。 浙江財經(jīng)大學(xué)本科生畢業(yè)論文(設(shè)計 ) 9 6 系統(tǒng)概要設(shè)計 系統(tǒng)總體結(jié)構(gòu)設(shè)計 本系統(tǒng)采用 Selenium2( + WebDriver )自動化測試框架、 Spring 框架、TestNG 測試框架、 SDP( SRT Development Platform 世導(dǎo)開發(fā)平臺)作為本系統(tǒng)的總體集成框架,集成開發(fā)環(huán)境( IDE)采用 MyEclipse,開發(fā)環(huán)境采用 Java 語言,運行環(huán)境采用 Windows 和 Linux 兩種。 本系統(tǒng)的開發(fā)主要實現(xiàn)了針對 web 訪問的不同系統(tǒng)、不同業(yè)務(wù)、不同主流瀏覽器進行自動化測試的開發(fā)、調(diào)試、項目構(gòu)建、部署、運行、監(jiān)控、分析、告警、生成報告等一系列功能。 本系統(tǒng)采取的是三層框架結(jié)構(gòu),分別包括測試用例層(測試用例腳本模塊)、代理(Agent)層(頁面對象模塊等)、 UI Driver 層(測試驅(qū)動模塊等)三層,如圖 61 所示。 圖 61 三層框架結(jié)構(gòu) 測試用例層 在本系統(tǒng)中測試用例層(腳本)又分為“模塊類庫”和 “測試用例腳本”兩部分。 浙江財經(jīng)大學(xué)本科生畢業(yè)論文(設(shè)計 ) 10 模塊類庫 “模塊類庫”分為“模塊公共類庫”和“模塊特定類庫”?!澳K公共類庫”是在模塊內(nèi)部將可以為各個模塊共享使用的方法抽象出來,作為一個公共類。它可以是一個單的邏輯操作,也可以是復(fù)雜邏輯實現(xiàn)。比如用戶打開瀏覽器、登錄、點擊菜單等操作?!澳K特定類庫”是指各個業(yè)務(wù)模塊類的特定操作,可以是某個檢查點的校驗,也可以是針對頁面上的某個操作?!皽y試用例腳本”在最上層,它根據(jù)測試點進行設(shè)計,面向具體的應(yīng)用。它可直接調(diào)用“模塊類庫”的方法,即調(diào)單個邏輯操作,而不關(guān)心這個邏輯的實現(xiàn)有 多復(fù)雜。它是單
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1