


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、測試自動化自動化測試就是希望能夠通過自動化測試工具或其他,按照測試工程師的預定計劃進行自動的測試,目的是減輕手工測試的勞動量,從而達到提高質(zhì)量的目的。自動化測試的目的在于發(fā)現(xiàn)老缺陷。而手工測試的目的在于發(fā)現(xiàn)新缺陷。測試自動化涉及到測試流程、測試體系、自動化編譯、持續(xù)集成、自動發(fā)布測試系統(tǒng)以及自動化測試等方面整合。也就是說要讓測試能夠自動化,不僅是技術(shù)、工具,更是一個公司和組織的文化問題。首先公司從、管理上支持您,其次要有專門的測試團隊去建立適合自動化測試的測試流程、測試體系;其次就是把原代碼從受控庫中取出、編譯、集成、發(fā)布可運行系統(tǒng)、進行自動化的單元測試和自動化的功能測試的過程。(一)、自動化
2、測試的好處1、 對新版本執(zhí)行回歸測試測試每個特征對于產(chǎn)品型的,每發(fā)布一個新的版本,其中大部分功能和界面都和上一個版本相似或完全相同,這部分功能特別適合于自動化測試, 從而可以讓測試達到測試每個特征的目的。2、更頻繁的測試沉悶、耗時的產(chǎn)品向市場的發(fā)布周期是 3 個月,也就是的開發(fā)周期只有短短的 3 個月,而在測試期間是每天/每 2 天都要發(fā)布一個版本供測試測試,一個系統(tǒng)的功能點有幾千個上萬個,人工測試是非常的耗時和繁瑣,這樣必然會使測試效率低下。3、替代手工測試的300 個用戶有些非功能性方面的測試:壓力測試、并發(fā)測試、大數(shù)據(jù)量測試、性測試,用人來測試是不可能達到的。 在沒有引入自動化測試工具之
3、前,為了測試并發(fā),研發(fā)中心的一、兩百號人在研發(fā)經(jīng)理的口令:1、2、3!,大家同時按下同一個按鈕?;叵肫疬@中情景也蠻有意思的。4、具有一致性和可重復性由于每次自動化測試運行的是相同的, 所以每次執(zhí)行的測試具有一致性, 人是很難做到的. 由于自動化測試的一致性,很容易發(fā)現(xiàn)被測的任何改變。5、更好的利用資源/晚上理想的自動化測試能夠按計劃完全自動的運行, 在開發(fā)和測試不可能實行三班倒的情況下, 自動化測試可以勝任這個任務(wù), 完全可以在周末和晚上執(zhí)試. 這樣充分的利用了公司的資源,也避免了開發(fā)和測試之間的等待.6、解決測試與開發(fā)之間的通常在開發(fā)的末期,進入集成測試階段, 由于每發(fā)布一個版本的初期,測試
4、系統(tǒng)的錯誤比較少,這時開發(fā)有等待測試測試出錯誤的時間. 事實上在疊代周期很短的開發(fā)模式中,存在的,但自動化測試可以解決其中的主要。7、增加信任度總之,自動化測試的好處和收益是很明顯的,但也只有順利事實了自動化測試才能從中獲得它的益處。(二)、 自動化測試 誤區(qū)、限制自動化化測試好處很多,但也有很多的局限,也正因為很多對自動化測試的期望太高,所以有很多執(zhí)行自動化測試失敗的例子。1、 期望自動化測試能取代手工測試不能期望自動化測試來取代手工測試, 測試主要還是要靠人工的。2、期望自動測試發(fā)現(xiàn)大量新缺陷同樣不能期望自動化測試去發(fā)現(xiàn)新的缺陷, 事實證明新缺陷越多,自動化測試失敗的幾率就越大。發(fā)現(xiàn)的新缺
5、陷應該是手工測試的主要目的。測試James Bach 總結(jié)得 85%的缺陷靠手工發(fā)現(xiàn),而自動化測試只能發(fā)現(xiàn) 15的缺陷。其實我認為自動化測試能夠很好的發(fā)現(xiàn)老缺陷。3、工具本身不具有想象力工具畢竟是工具,出現(xiàn)一些需要思考、體驗、界面美觀方面的測試,自動化測試工具無能為力。4、技術(shù)問題、組織問題、自動化測試的推行,有很多阻力,比如組織是否重視, 是否成立這樣的測試團隊,是否有這樣的技術(shù)水平,對于測試的工作量也挺大的,是否值得等等問題都必須考慮。(三)、 不適合自動化測試情況自動化測試不是適合所有的的項目。1、定制型項目(的)為客戶定制的項目,期由客戶方承擔的,甚至采用的開發(fā)語言、運行環(huán)境也是客戶特
6、別要求的,即公司在這方面的測試積累就少,這樣的項目不適合作自動化化測試。2、項目周期很短的項目項目周期很短,測試周期很短,就不值得花精力去投資自動化測試,好不容易建立起的測試,不能得到重復的利用是不現(xiàn)實的。3、業(yè)務(wù)規(guī)則復雜的對象業(yè)務(wù)規(guī)則復雜的對象,有很多的邏輯關(guān)系、運算關(guān)系,工具就很難測試。4、美觀、聲音、易用性測試人的感觀方面的:界面的美觀、聲音的體驗、易用性的測試,也只有人來測試5、測試很少運行:一個月只運行一次測試很少運行,對自動化測試就是一種浪費。自動化測試就是讓它不厭其煩的、反反復復的運行才有效率。6、不穩(wěn)定不穩(wěn)定,則會由于這些不穩(wěn)定導致自動化測試失敗。只有當達到相對的穩(wěn)定,沒有界面
7、性嚴重錯誤和中斷錯誤才能開始自動化測試。7、涉及物理交互工具很難完成與物理設(shè)備的交互,比如刷卡的測試等。四、什么樣的情況適合自動化測試自動化測試之所以能在很多大公司實施起來,就是有它適合自動化測試的特點和高的投資回報率。1、產(chǎn)品型項目產(chǎn)品型的項目,每個項目只改進少量的功能,但每個項目必須反反復復的測試那些沒有改動過的功能。這部分測試完全可以讓自動化測試來承擔, 同時可以把新加入的功能的測試也慢慢地加入到自動化測試當中。2、增量式開發(fā)、持續(xù)集成項目由于這種開發(fā)模式是頻繁的發(fā)布新版本進試,也就需要自動化測試來頻繁的測試,以便把人從中解脫出來測試新的功能。3、能夠自動編譯、自動發(fā)布的系統(tǒng)要能夠完全實
8、現(xiàn)自動化測試,必須能夠具有自動化編譯,自動化發(fā)布系統(tǒng)進試的功能。 當然,不能達到這個要求也可以在手工干預下進行自動化測試。4、回歸測試回歸測試試自動化測試的強項,它能夠很好的確保你是否引入了新的缺陷,老的缺陷是否修改過來了。在某種程度上可以把自動化測試工具叫做回歸測試工具。5、多次重復、機械性動作自動化測試最喜歡測試:多次重復、機械性動作,這樣的測試對它來說從不會失敗。比如要向系統(tǒng)輸入大量的相似數(shù)據(jù)來測試壓力和報表。6、需要頻繁運試在一個項目中需要頻繁的運試,測試周期按天算,就能最大限度的利用測試,提高工作效率。7、將煩瑣的任務(wù)轉(zhuǎn)化為自動化測試五、自動化編譯1、實現(xiàn)自動化日構(gòu)建需要做以下幾部分
9、的工作:2、將所有的源代碼保存在單一的開發(fā)服務(wù)器,讓所有人都能從這里獲取的源代碼(需要用配置管理工具存放源代碼: 如 VSS/CVS/ClearCase)。3、使創(chuàng)建過程完全自動化,讓任何人都可以只輸入一條命令就完成系統(tǒng)的創(chuàng)建。4、使測試完全自動化,讓任何人都可以只輸入一條命令就運行一套完整的系統(tǒng)測試。5、確保所有人都可以得到、最好的可執(zhí)行文件。6、自動化編譯: 為了能夠提供自動化測試,所以所有的代碼必須能夠?qū)崿F(xiàn)自動化編譯。其實很多在做持續(xù)集成的公司都實現(xiàn)了改功能:如 java 程序可以采用在 Ant + Junit 的基礎(chǔ)之上添加自己的功能既可以實現(xiàn)持續(xù)集成把這個工具叫:日構(gòu)建但很多公司并沒
10、有實現(xiàn)對 JSP 的自動編譯,對于采用 jsp 編寫的 web 頁面,它是編譯執(zhí)行語言,由于第一次執(zhí)行要先編譯,即第一次的速度稍慢,如果要采用自動化測試工具 winrunner進行功能測試時,則會失敗。因為自動化測試工具最基本的要求是:進入條件和出口條件必須在錄制與回放時完全相同。(一)、為什么需要一個流程?很多公司投入了大量的測試經(jīng)費,然而還是沒有收到預期的收益。這可能是因為:缺乏足夠的測試計劃、缺乏測試的優(yōu)先次序、工作的重復、沒有利用工具來配合人工測試、沒有利用測試自動化工具、測試自動化運用不夠或者運用的不恰當?shù)鹊?。所以需要有測試套件的實施流程。(二)、 為什么需要工具?工具能夠加快測試的
11、進度,可以把控制和管理引入整個測試過程,比如 MI 公司的TestDirector 就是一個很好使用的測試管理系統(tǒng),而且是 web 版的。測試管理系統(tǒng)有很多的作用:測試管理和:測試管理系統(tǒng)能夠保證系統(tǒng)開發(fā)和測試流程你不盡快得到解決。審核的憑據(jù):TestDirector 存貯了所有的,全部修改被寫進一個審核里,如:時間、日期、修改人、錯誤,能夠很清晰的看到把錯誤當皮球踢不的整個過程。提高測試覆蓋率:通過自動化測試工具的數(shù)據(jù)驅(qū)動來測試功能,可以提高測試覆蓋率。(三)、測試套件-測試體系的主要目標(5W3H)測試體系的建立是為了確保測試的全部活動按計劃、按標準的進行,是測試的行動和職責指導。也就是有
12、這樣的一系、流程來指導他們的工作,培養(yǎng)了他們的主人翁責任感。讓測試工作開展得有條不紊。主要的內(nèi)容有:測試流程,測試方針、測試規(guī)程、文檔模版、質(zhì)量標準、測試工具、測試技術(shù)和方法等內(nèi)容。測試體系的主要目標(5W3H):目的是告訴與測試活動相關(guān)的在什么樣的時間,什么樣的地點,由做,做什么樣的事情,為什么做,如何做,怎么樣才算完成,缺陷任何分析和預防等??梢院喎Q:5W3H.1、為什么要測試系統(tǒng)(Why) ?測試新功能:每發(fā)布一個新的版本,首先要去測試它的新功能。創(chuàng)建回歸測試的測試套件驗證缺陷修改:在這個測試周期中要驗證上個測試周期的缺陷修改情況。驗證系統(tǒng)性能檢測新硬件2、如何測試系統(tǒng)(How)? 系統(tǒng)
13、測試:檢查系統(tǒng)總體功能壓力測試:在反復相同的操作下、或其他壓力條件下,比如:低內(nèi)存空間/低磁盤空間等,檢測的反應。安裝測試:檢驗系統(tǒng)安裝得是否正確,而且與已安裝的不發(fā)生。安全測試:測試系統(tǒng)存取權(quán)限和的級別邊界測試:利用數(shù)據(jù)邊界和系統(tǒng)邊界檢驗程序3、什么時候進試(When)? 在開發(fā)流程的哪個階段開始測試?在需求規(guī)格說明書一出來,或項目管理計劃一出來,測試就開始有事做:寫測試計劃、編寫測試用例、執(zhí)試、測試和缺陷分析。很多以為要編碼結(jié)束后才開始測試工作,所以不肯有專職的測試,怕他們在項目前期沒有事做。前提條件和附屬條件是什么?多長時間需要進行一次測試?交貨的時間表是什么?什么時候停止測試? 什么時
14、候停止測試是很有學問的,很多公司多半是在沒有時間、沒有資金是,或項目經(jīng)理說了停止就停止。事實上根據(jù)bug、bug 發(fā)現(xiàn)率與錯誤修正率的時間曲線來決定的。只有當這個曲線達到水平線后可以停止。4實施測試(Who) ?硬件:具備什么樣的服務(wù)器、客戶端及其網(wǎng)絡(luò)環(huán)境。:安裝什么樣的環(huán)境最適合作這些測試。體系架構(gòu):測試的類別有很多,不同的人進行不同的測試,比如開發(fā)做單元測試,測試作功能測試、集成測試、非功能性測試,而讓市場、需求、客戶去做驗收測試數(shù)據(jù):需要什么樣的測試數(shù)據(jù)來實施這一次的測試,這些測試數(shù)據(jù)的設(shè)計。人力資源:按測試計劃的要求安排相關(guān)的人力資源。5、在哪里進試(Where) ?在開發(fā)服務(wù)器上測試
15、?開發(fā)可能會叫你在測試服務(wù)器上測試,事實上這樣對測試效率和測試的情緒影響是很大的,因為開發(fā)服務(wù)器是一個極不穩(wěn)定的環(huán)境。而且也沒明顯的測試階段。?建立一個測試對于有很多項目的公司,建立一個測試是很必要的,主要用來做環(huán)境的兼容性測試,壓力、性能測試,驗收測試等等。為了減輕測試者本地機器的負荷,使之在進試的同時可以做其他測試,定時執(zhí)試的機制。6、測試什么(What) ?自動測試中應用程序的主要特點是什么?按重要性將這些特點排序?自動測試各部分的相對重要性?總體質(zhì)量目標是什么(可用性,功能,可靠性,性能等等)?7、怎么樣才算完成(How)?要定義測試的完成條件和完成標準, 以便達到這些條件和標準后應該
16、立即停止測試,否則在經(jīng)濟和時間上是不允許的,因為測試可以下去.8、缺陷如何分析和預防(How)?測試過后應該對測試出的錯誤類別,錯誤特點作分析和提出預防措施,以便在將來的項目中有意識的去避免,這就是 CMM5 中說的缺陷預防.六、自動化測試工具(WinRunner)另外在此簡單的介紹一下自動化測試工具的原理。1、 Winrunner 基本原理錄制/回放功能錄制錄制前的Add-in 選擇:它對不同的語言開發(fā)了不同的 Add-in錄制前的參數(shù)設(shè)置錄制方式選擇:Contexsitiveog錄制技巧保存錄制和 GUI調(diào)試修改錄制好的。添加同步點和等待時間。添加檢查點checkpiont。修改 GUI-MAP,提高可讀性、可性 ?;胤诺那疤釛l件。執(zhí)試方式:驗證方式:核對應用程序是否正確。調(diào)試方式:增加新特征和功能更新方式:用新版本應用程序中得到的運行結(jié)果更新期望結(jié)果。分析結(jié)果。2、 參數(shù)化數(shù)據(jù)驅(qū)動測試特點:用相同測試執(zhí)行不同測試優(yōu)點:提高測試覆蓋率步驟:1).轉(zhuǎn)換你的測試為
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 代理變更公司合同范本
- 上海品質(zhì)營銷咨詢合同范本
- 公司租農(nóng)田合同范本
- 養(yǎng)兔場建設(shè)合同范本
- 第四章 光現(xiàn)象第4節(jié) 光的折射(教學設(shè)計)-2024-2025學年人教版八年級物理上冊
- 2024年中牧實業(yè)股份有限公司招聘筆試真題
- 業(yè)績獎勵合同范本
- 分期按揭合同范本
- 北京房屋租賃合同合同范本
- 2024年河南駐馬店幼兒師范高等專科學校教師招聘考試真題
- 壓力容器作業(yè)人員培訓課件下
- 學前教育考題及答案
- 第三單元簡易方程(二)(知識精講+典題精練)-2023-2024學年五年級下冊數(shù)學高頻考點重難點講義(滬教版)
- 建筑施工現(xiàn)場環(huán)境保護與治理培訓
- 第1課《我們的閑暇時光》教學設(shè)計
- 《中國傳統(tǒng)民歌欣賞》課件
- 模塊1鐵道線路養(yǎng)護與維修認知《鐵道線路養(yǎng)護與維修》教學課件
- 高鐵無砟軌道精調(diào)精測課件
- 2024年企業(yè)規(guī)章制度修訂方案
- 聚焦任務(wù)的學習設(shè)計作業(yè)改革新視角
- 血管活性藥物靜脈輸注護理方法(中華護理學會團體標準T CNAS 22-2021)
評論
0/150
提交評論