




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、Web自動化測試開放平臺自動化測試開放平臺WebWeb自動化測試解決方案自動化測試解決方案王勇2014年12月未來網(wǎng)絡范圍與目標 適用對象: 軟件測試團隊 軟件開發(fā)團隊 項目驗收團隊 適用目標: 了解軟件生命周期的測試過程(跳過) 了解和掌握自動化測試概念 掌握自動化測試的一些基本知識內容提要u 軟件自動化測試的概述軟件自動化測試的概述u WebWeb自動化測試的方案設計自動化測試的方案設計u WebWeb自動化測試的方案實施自動化測試的方案實施u 軟件自動化測試成本投入和風險分析軟件自動化測試成本投入和風險分析為什么要實施自動化測試?為什么要實施自動化測試? 應用系統(tǒng)日趨復雜的客觀要求 一個
2、不可避免的問題是,應用系統(tǒng)變得日趨復雜,并且造成了更大的風險。測試消耗的成本越來越高,花費的時間也越來越長。而成本與時間是有限的。為了在限制的成本與時間范圍內,控制控制發(fā)布的軟件產品的質量,測試人員被要求在盡量短的時間內對軟件進行足夠的測試。 避免重復測試的主觀要求 迭代式開發(fā)過程:迭代式開發(fā)過程:目前的軟件開發(fā)或多或少使用了迭代式開發(fā)過程,這就導致了我們需要進行一輪又一輪的測試。 回歸測試:回歸測試:為了檢驗軟件版本是否正確,或者當發(fā)現(xiàn)軟件中出現(xiàn)了一個或多個以前曾經被修復的缺陷時,不可避免的需要進行回歸性的測試。什么時候實施自動化測試?什么時候實施自動化測試?如果我們的自動化測試實施失敗了,
3、很顯然,我們在不適宜的時機進行了這個工作。開發(fā)階段?開發(fā)階段?穩(wěn)定階段?穩(wěn)定階段? 部署階段?部署階段?建議:可預見的需求不影響建議:可預見的需求不影響自動化測試用例的設計的設計自動化測試實施失敗的因素期望值過高。就像管理人員要求完全測試一樣,期望期望值過高。就像管理人員要求完全測試一樣,期望100100的測試自的測試自動化,也同樣是一個不現(xiàn)實的需求。動化,也同樣是一個不現(xiàn)實的需求。自動化的收益和成本:自動化的收益和成本: 成本用例的開發(fā)用例的維護成本用例的開發(fā)用例的維護 收益收益 = = 重復運行次數(shù)重復運行次數(shù) (時間)(時間) + + 節(jié)約的時間節(jié)約的時間功能覆蓋率功能覆蓋率100成本成
4、本7自動化測試的成長過程pure scripted全部腳本化vague scripts少量的腳本fragmentarytest cases零碎的測試用例探索式測試roles角色Testing often begins as freestyle, expands toward scripted.測試總是從自由式的探索開始,朝腳本化方向擴張time8自動化測試的應用時機配置管理數(shù)據(jù)庫構建版本發(fā)布數(shù)據(jù)庫初始化自動化冒煙測試手工探索測試自動化回歸測試冒煙測試結果測試結果報告開發(fā)偏重業(yè)務流程偏重功能模塊u 軟件測試自動化的概述軟件測試自動化的概述u Web自動化測試的方案設計自動化測試的方案設計l功能方
5、案設計功能方案設計l業(yè)務方案設計業(yè)務方案設計u Web自動化測試的方案實施自動化測試的方案實施u 軟件自動化測試成本投入和風險分析軟件自動化測試成本投入和風險分析內容提要讓我們一起來設計!依據(jù)什么來設計測試方案?依據(jù)什么來設計測試方案? 測試方案要具有代表性!測試方案要具有代表性!仔細想想。仔細想想。 http:/ 自動化測試的功能方案設計的流程:自動化測試的功能方案設計的流程: 操作對象對象屬性功能實現(xiàn)結果驗證l 自動化自動化測試的功能方案設計測試的功能方案設計操作用例圖:操作用例圖:通過通過Java實現(xiàn)實現(xiàn)通過通過WebDriver實現(xiàn)實現(xiàn)通過通過Ruby實現(xiàn)實現(xiàn)2005 iSoftSto
6、ne Information Service Corporation. All rights reserved.12Web對象的識別Watir-WebDriverWatir-WebDriver2005 iSoftStone Information Service Corporation. All rights reserved.13Web對象的識別Watir-WebDriverWatir-WebDriver 輸入框 input 按鈕 button 下拉框 select 鏈接 link 點擊 click 單選 radio 多選 checkbox 模擬鍵盤 send_keys:enter自動化測試
7、開放平臺框架設計自動化測試開放平臺框架設計自動化測試框架的用例設計示例 一、基于ruby的watir-webdriver開發(fā) 二、統(tǒng)一預置參數(shù)輸入規(guī)則,提供規(guī)則模板,做到一個用例一個類,一個方法一個輸出。(一個類可以多個方法) 三、統(tǒng)一輸出規(guī)則,比如:infoTiStone Login successful!001011 Info:代表該用例執(zhí)行成功!error代表失敗!warn代表警告! TiStone:代表執(zhí)行用例名稱 Login successful!:描述或捕獲的value值,以“!”結尾 001011:返回碼 四、統(tǒng)一用例名稱,應與輸出保持一致自動化測試框架的用例設計示例 五、入?yún)⒔y(tǒng)
8、一通過RubyBean介入 六、瀏覽器實例化、被測系統(tǒng)跳轉、用戶登錄、瀏覽器實例化等統(tǒng)一繼承Tools工具類自動化測試框架的ControlControl設計示例 一、一個用例對應一個Control 二、效驗輸出,判斷用例執(zhí)行成敗,根據(jù)規(guī)則關聯(lián)Linux服務器捕獲相關日志、配置文件等分析失敗原因,縮減定位區(qū)域范圍。 三、對比數(shù)據(jù),關聯(lián)MySql查詢數(shù)據(jù),對比web捕獲value值。自動化測試框架的ToolsTools設計示例 一、封裝常用工具類 二、Linux與MySql業(yè)務接口 三、面向對象,實現(xiàn)繼承Tools,降低用例開發(fā)難度自動化測試框架的Model設計示例 一、提供統(tǒng)一執(zhí)行、單一執(zhí)行與批
9、量執(zhí)行模式 二、關聯(lián)JAVA前端,通過RubyBean實現(xiàn)兩端交互自動化測試框架的JAVA前端設計示例 一、通過被測系統(tǒng)與ruby節(jié)點被測系統(tǒng):需要測試的系統(tǒng)Ruby節(jié)點:實現(xiàn)前端與底層ruby關聯(lián)(可選) 二、用例管理提供創(chuàng)建用例節(jié)點提供上傳指定節(jié)點自動化用例 三、用戶管理自動化測試框架的結果展示設計示例 一、用例執(zhí)行后展示 二、點擊查看詳情u 軟件測試自動化的概述軟件測試自動化的概述u Web自動化測試的方案設計自動化測試的方案設計u Web自動化測試的方案實施自動化測試的方案實施l 自動化測試腳本的錄制和編寫自動化測試腳本的錄制和編寫l 自動化測試的執(zhí)行和具體實現(xiàn)自動化測試的執(zhí)行和具體實
10、現(xiàn)l 測試操作和測試數(shù)據(jù)的回收測試操作和測試數(shù)據(jù)的回收u 軟件自動化測試成本投入和風險分析軟件自動化測試成本投入和風險分析內容提要自動化測試腳本設計和錄制 工具工具: WatirRecorder+統(tǒng)一預置參數(shù)輸入規(guī)則,提供規(guī)則模板,做到一個用例一個類,一個方法一個輸出。(一個類可以多個方法)自動化測試腳本的手工編寫 例子一: (實現(xiàn)hao123,搜索“ruby”功能)require watir-webdriverinclude Watirrequire test/unitclass TC_recorded Test:Unit:TestCasedef test_recorded b = Wati
11、r:Browser.new b.goto(http:/ b.text_field(:name, word).set(ruby) b.text_field(:name, word).set(ruby) b.button(:value, 百度一下百度一下).clickendend自動化測試的具體實現(xiàn) 具體實現(xiàn)在Tools工具類中,多以Linux、Mysql體現(xiàn) 列子二: (通過linux查詢黑白名單是否生效)class Linux L.getpassword) do |ssh| result = ssh.exec!(server_cmd1) result=result . .endattr_wri
12、ter :hostu 軟件自動化測試的概述軟件自動化測試的概述u Web自動化測試的方案設計自動化測試的方案設計u Web自動化測試的方案實施自動化測試的方案實施u 軟件自動化測試成本投入和風險分析軟件自動化測試成本投入和風險分析內容提要軟件自動化測試的成本投入腳本的維護成本:腳本的維護成本:自動化的測試流程,使得腳本的維護成為自動化實施的一個關鍵性的依據(jù)。對于一個規(guī)范化的系統(tǒng)開發(fā)流程來說,實現(xiàn)測試的自動化是很有必要的。但是自動化的腳本維護使得我們的自動化測試在成本上變得較為昂貴。每一個系統(tǒng)的開發(fā)都是時刻隨著需求的變更而改變,然而在大多數(shù)的情況下,就是很微小的一點系統(tǒng)修改都會導致我們去大量的修
13、改自動化的測試腳本。( (這就是我們?yōu)槭裁匆爰軜嫷年P系!這就是我們?yōu)槭裁匆爰軜嫷年P系!) )我們的架構的好處就是業(yè)務與邏輯分開,就是頁面出現(xiàn)了更新或修改只需重新我們的架構的好處就是業(yè)務與邏輯分開,就是頁面出現(xiàn)了更新或修改只需重新錄制或編寫新的用例即可,不會影響業(yè)務結果。錄制或編寫新的用例即可,不會影響業(yè)務結果。自動化測試的腳本的維護整個自動化測試開放平臺分兩個部件:JAVA前端(負責數(shù)據(jù)的預置、與執(zhí)行的發(fā)起)Ruby底層(負責業(yè)務的實現(xiàn)、與操作的執(zhí)行)關于維護JAVA前端所有配置參數(shù)都是動態(tài)獲取,后期業(yè)務變更無需修改Ruby底層Test用例層與Control控制層隨著需求的迭代,需要長
14、期的進行維護Tools工具層只會根據(jù)業(yè)務上有很大的變動而更改othe無需更改軟件自動化測試的風險分析風險的存在原因:風險的存在原因:自動化測試只是針對系統(tǒng)的大部分主要功能進行了有效的測試和驗證,從而使得覆蓋的測試面較為狹窄,導致系統(tǒng)的有些隱藏問題無法發(fā)現(xiàn)。風險的減小建議:風險的減小建議:在自動化測試的實現(xiàn)初期 ,設計好自動化的測試用例,把握好系統(tǒng)的重點功能及可能會出現(xiàn)的問題,進而再實現(xiàn)測試自動化。在現(xiàn)有條件下減小可預計的系統(tǒng)風險。目標:目標:在現(xiàn)有條件下減小可預計的系統(tǒng)測試風險。說在最后的 1、自動化并不是全自動,需要花精力才能讓他自動化。 2、自動化工具不是萬能的,他也有自己的缺陷。 3、自動化永遠不可能取代人工的位置。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《數(shù)智時代下的供應鏈管理:理論與實踐》課件 第五章 供應鏈的外包與集成
- 2025年中國納帕皮革內飾行業(yè)市場全景分析及前景機遇研判報告
- 肺癌病人圍手術期的護理
- 基于鄉(xiāng)村振興背景探索農村人才隊伍的建設路徑
- 腫瘤進修護士進修匯報
- 心衰病人護理
- 周末健康膳食規(guī)劃方案
- 車位購置與社區(qū)安全保障服務協(xié)議
- 餐飲設備租賃及餐飲場所租賃合同
- 特色火鍋店服務員勞動合同范本
- 短視頻起號運營全攻略
- 班主任微創(chuàng)意:59招讓班級管理腦洞大開
- 血管旋磨術護理查房
- 鐵路貨運低碳化發(fā)展路徑
- 分析化學知識點總結
- 《統(tǒng)計學》 課件 廖穎文 1. 緒 論
- QCC品管圈活動表格匯編
- 歷屆圖靈獎獲獎者
- 幼兒園零星改造工程施工完整方案
- 城市軌道交通服務禮儀PPT完整全套教學課件
- 《世界遺產背景下的影響評估指南和工具包》
評論
0/150
提交評論