版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、Web自動化測試開放平臺,Web自動化測試解決方案,王勇 2014年12月,未來網(wǎng)絡(luò),范圍與目標(biāo),適用對象: 軟件測試團(tuán)隊(duì) 軟件開發(fā)團(tuán)隊(duì) 項(xiàng)目驗(yàn)收團(tuán)隊(duì) 適用目標(biāo): 了解軟件生命周期的測試過程(跳過) 了解和掌握自動化測試概念 掌握自動化測試的一些基本知識,內(nèi)容提要,軟件自動化測試的概述 Web自動化測試的方案設(shè)計(jì) Web自動化測試的方案實(shí)施 軟件自動化測試成本投入和風(fēng)險分析,為什么要實(shí)施自動化測試?,應(yīng)用系統(tǒng)日趨復(fù)雜的客觀要求 一個不可避免的問題是,應(yīng)用系統(tǒng)變得日趨復(fù)雜,并且造成了更大的風(fēng)險。測試消耗的成本越來越高,花費(fèi)的時間也越來越長。而成本與時間是有限的。為了在限制的成本與時間范圍內(nèi),控制
2、發(fā)布的軟件產(chǎn)品的質(zhì)量,測試人員被要求在盡量短的時間內(nèi)對軟件進(jìn)行足夠的測試。 避免重復(fù)測試的主觀要求 迭代式開發(fā)過程:目前的軟件開發(fā)或多或少使用了迭代式開發(fā)過程,這就導(dǎo)致了我們需要進(jìn)行一輪又一輪的測試。 回歸測試:為了檢驗(yàn)軟件版本是否正確,或者當(dāng)發(fā)現(xiàn)軟件中出現(xiàn)了一個或多個以前曾經(jīng)被修復(fù)的缺陷時,不可避免的需要進(jìn)行回歸性的測試。,什么時候?qū)嵤┳詣踊瘻y試?,如果我們的自動化測試實(shí)施失敗了, 很顯然,我們在不適宜的時機(jī)進(jìn)行了這個工作。,開發(fā)階段?穩(wěn)定階段? 部署階段?,建議:可預(yù)見的需求不影響自動化測試用例的設(shè)計(jì),討論,自動化測試實(shí)施失敗的因素,期望值過高。就像管理人員要求完全測試一樣,期望100的測
3、試自動化,也同樣是一個不現(xiàn)實(shí)的需求。 自動化的收益和成本: 成本用例的開發(fā)用例的維護(hù) 收益 = 重復(fù)運(yùn)行次數(shù) (時間) + 節(jié)約的時間,功能覆蓋率,100,成本,7,自動化測試的成長過程,pure scripted 全部腳本化,vague scripts 少量的腳本,fragmentary test cases 零碎的測試用例,探索式測試,roles 角色,Testing often begins as freestyle, expands toward scripted. 測試總是從自由式的探索開始,朝腳本化方向擴(kuò)張,time,8,自動化測試的應(yīng)用時機(jī),配置管理數(shù)據(jù)庫,構(gòu)建版本發(fā)布,數(shù)據(jù)庫初
4、始化,自動化冒煙測試,手工探索測試,自動化回歸測試,冒煙測試結(jié)果,測試 結(jié)果報(bào)告,開發(fā),偏重業(yè)務(wù)流程,偏重功能模塊,驗(yàn)收,自測,軟件測試自動化的概述 Web自動化測試的方案設(shè)計(jì) 功能方案設(shè)計(jì) 業(yè)務(wù)方案設(shè)計(jì) Web自動化測試的方案實(shí)施 軟件自動化測試成本投入和風(fēng)險分析,內(nèi)容提要,讓我們一起來設(shè)計(jì)!,依據(jù)什么來設(shè)計(jì)測試方案?,測試方案要具有代表性!,仔細(xì)想想。,測試方案設(shè)計(jì),自動化測試的功能方案設(shè)計(jì)的流程: 操作對象對象屬性功能實(shí)現(xiàn)結(jié)果驗(yàn)證,自動化測試的功能方案設(shè)計(jì)操作用例圖:,通過Java實(shí)現(xiàn),通過WebDriver實(shí)現(xiàn),通過Ruby實(shí)現(xiàn),2005 iSoftStone Information
5、Service Corporation. All rights reserved.,12,Web對象的識別Watir-WebDriver,2005 iSoftStone Information Service Corporation. All rights reserved.,13,Web對象的識別Watir-WebDriver,輸入框 input 按鈕 button 下拉框 select 鏈接 link 點(diǎn)擊 click 單選 radio 多選 checkbox 模擬鍵盤 send_keys:enter,自動化測試開放平臺框架設(shè)計(jì),自動化測試開放平臺框架設(shè)計(jì),自動化測試框架的用例設(shè)計(jì)示例,一
6、、基于ruby的watir-webdriver開發(fā) 二、統(tǒng)一預(yù)置參數(shù)輸入規(guī)則,提供規(guī)則模板,做到一個用例一個類,一個方法一個輸出。(一個類可以多個方法) 三、統(tǒng)一輸出規(guī)則,比如:infoTiStone Login successful!001011 Info:代表該用例執(zhí)行成功!error代表失敗!warn代表警告! TiStone:代表執(zhí)行用例名稱 Login successful?。好枋龌虿东@的value值,以“!”結(jié)尾 001011:返回碼 四、統(tǒng)一用例名稱,應(yīng)與輸出保持一致,自動化測試框架的用例設(shè)計(jì)示例,五、入?yún)⒔y(tǒng)一通過RubyBean介入 六、瀏覽器實(shí)例化、被測系統(tǒng)跳轉(zhuǎn)、用戶登錄、瀏
7、覽器實(shí)例化等統(tǒng)一繼承Tools工具類,自動化測試框架的Control設(shè)計(jì)示例,一、一個用例對應(yīng)一個Control 二、效驗(yàn)輸出,判斷用例執(zhí)行成敗,根據(jù)規(guī)則關(guān)聯(lián)Linux服務(wù)器捕獲相關(guān)日志、配置文件等分析失敗原因,縮減定位區(qū)域范圍。 三、對比數(shù)據(jù),關(guān)聯(lián)MySql查詢數(shù)據(jù),對比web捕獲value值。,自動化測試框架的Tools設(shè)計(jì)示例,一、封裝常用工具類 二、Linux與MySql業(yè)務(wù)接口 三、面向?qū)ο螅瑢?shí)現(xiàn)繼承Tools,降低用例開發(fā)難度,自動化測試框架的Model設(shè)計(jì)示例,一、提供統(tǒng)一執(zhí)行、單一執(zhí)行與批量執(zhí)行模式 二、關(guān)聯(lián)JAVA前端,通過RubyBean實(shí)現(xiàn)兩端交互,自動化測試框架的JAV
8、A前端設(shè)計(jì)示例,一、通過被測系統(tǒng)與ruby節(jié)點(diǎn) 被測系統(tǒng):需要測試的系統(tǒng) Ruby節(jié)點(diǎn):實(shí)現(xiàn)前端與底層ruby關(guān)聯(lián)(可選) 二、用例管理 提供創(chuàng)建用例節(jié)點(diǎn) 提供上傳指定節(jié)點(diǎn)自動化用例 三、用戶管理,自動化測試框架的結(jié)果展示設(shè)計(jì)示例,一、用例執(zhí)行后展示 二、點(diǎn)擊查看詳情,軟件測試自動化的概述 Web自動化測試的方案設(shè)計(jì) Web自動化測試的方案實(shí)施 自動化測試腳本的錄制和編寫 自動化測試的執(zhí)行和具體實(shí)現(xiàn) 測試操作和測試數(shù)據(jù)的回收 軟件自動化測試成本投入和風(fēng)險分析,內(nèi)容提要,自動化測試腳本設(shè)計(jì)和錄制,工具: WatirRecorder+ 統(tǒng)一預(yù)置參數(shù)輸入規(guī)則,提供規(guī)則模板,做到一個用例一個類,一個方
9、法一個輸出。(一個類可以多個方法),自動化測試腳本的手工編寫,例子一: (實(shí)現(xiàn)hao123,搜索“ruby”功能),require watir-webdriver include Watir require test/unit class TC_recorded Test:Unit:TestCase def test_recorded b = Watir:Browser.new b.goto( b.text_field(:name, word).set(ruby) b.text_field(:name, word).set(ruby) b.button(:value, 百度一下).click
10、end end,自動化測試的具體實(shí)現(xiàn),具體實(shí)現(xiàn)在Tools工具類中,多以Linux、Mysql體現(xiàn) 列子二: (通過linux查詢黑白名單是否生效),class Linux L.getpassword) do |ssh| result = ssh.exec!(server_cmd1) result=result . . end attr_writer :host,軟件自動化測試的概述 Web自動化測試的方案設(shè)計(jì) Web自動化測試的方案實(shí)施 軟件自動化測試成本投入和風(fēng)險分析,內(nèi)容提要,軟件自動化測試的成本投入,腳本的維護(hù)成本:自動化的測試流程,使得腳本的維護(hù)成為自動化實(shí)施的一個關(guān)鍵性的依據(jù)。對于
11、一個規(guī)范化的系統(tǒng)開發(fā)流程來說,實(shí)現(xiàn)測試的自動化是很有必要的。但是自動化的腳本維護(hù)使得我們的自動化測試在成本上變得較為昂貴。每一個系統(tǒng)的開發(fā)都是時刻隨著需求的變更而改變,然而在大多數(shù)的情況下,就是很微小的一點(diǎn)系統(tǒng)修改都會導(dǎo)致我們?nèi)ゴ罅康男薷淖詣踊臏y試腳本。 (這就是我們?yōu)槭裁匆爰軜?gòu)的關(guān)系!) 我們的架構(gòu)的好處就是業(yè)務(wù)與邏輯分開,就是頁面出現(xiàn)了更新或修改只需重新錄制或編寫新的用例即可,不會影響業(yè)務(wù)結(jié)果。,自動化測試的腳本的維護(hù),整個自動化測試開放平臺分兩個部件: JAVA前端(負(fù)責(zé)數(shù)據(jù)的預(yù)置、與執(zhí)行的發(fā)起) Ruby底層(負(fù)責(zé)業(yè)務(wù)的實(shí)現(xiàn)、與操作的執(zhí)行) 關(guān)于維護(hù) JAVA前端所有配置參數(shù)都是
12、動態(tài)獲取,后期業(yè)務(wù)變更無需修改 Ruby底層 Test用例層與Control控制層隨著需求的迭代,需要長期的進(jìn)行維護(hù) Tools工具層只會根據(jù)業(yè)務(wù)上有很大的變動而更改 othe無需更改,軟件自動化測試的風(fēng)險分析,風(fēng)險的存在原因:自動化測試只是針對系統(tǒng)的大部分主要功能進(jìn)行了有效的測試和驗(yàn)證,從而使得覆蓋的測試面較為狹窄,導(dǎo)致系統(tǒng)的有些隱藏問題無法發(fā)現(xiàn)。,風(fēng)險的減小建議:在自動化測試的實(shí)現(xiàn)初期 ,設(shè)計(jì)好自動化的測試用例,把握好系統(tǒng)的重點(diǎn)功能及可能會出現(xiàn)的問題,進(jìn)而再實(shí)現(xiàn)測試自動化。在現(xiàn)有條件下減小可預(yù)計(jì)的系統(tǒng)風(fēng)險。,目標(biāo):在現(xiàn)有條件下減小可預(yù)計(jì)的系統(tǒng)測試風(fēng)險。,說在最后的,1、自動化并不是全自動,需要花精力才能讓他自動化。 2、自動化工具不是萬能的,他也有
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 紐約地鐵介紹
- 內(nèi)分泌減肥科普
- 活動策劃新年儀式方案(3篇)
- 銀行體驗(yàn)活動策劃方案(3篇)
- 高中藝術(shù)班班級管理制度(3篇)
- 2026年及未來5年市場數(shù)據(jù)中國木雕屏風(fēng)行業(yè)發(fā)展監(jiān)測及投資戰(zhàn)略咨詢報(bào)告
- 《GA 648-2006交通技術(shù)監(jiān)控信息數(shù)據(jù)規(guī)范》專題研究報(bào)告:專家視角下的深度與未來展望
- 納稅知識培訓(xùn)課件
- 養(yǎng)老院入住老人財(cái)產(chǎn)管理制度
- 企業(yè)員工培訓(xùn)管理制度
- 原發(fā)性骨髓纖維化2026
- 2023-2024學(xué)年北京市海淀區(qū)清華附中八年級(上)期末數(shù)學(xué)試卷(含解析)
- TCFLP0030-2021國有企業(yè)網(wǎng)上商城采購交易操作規(guī)范
- 《油氣管道無人機(jī)智能巡檢系統(tǒng)技術(shù)管理規(guī)范》
- 牽引供電系統(tǒng)短路計(jì)算-三相對稱短路計(jì)算(高鐵牽引供電系統(tǒng))
- (完整版)第一性原理
- 安全技術(shù)勞動保護(hù)措施管理規(guī)定
- 學(xué)習(xí)主題班會課件 高三寒假攻略
- 高一年級主任工作總結(jié)(4篇)
- 論高級管理人員應(yīng)具備的財(cái)務(wù)知識
- GB/T 7354-2003局部放電測量
評論
0/150
提交評論