軟件測試前景與技術(shù)(2016年企業(yè)版)_第1頁
軟件測試前景與技術(shù)(2016年企業(yè)版)_第2頁
軟件測試前景與技術(shù)(2016年企業(yè)版)_第3頁
軟件測試前景與技術(shù)(2016年企業(yè)版)_第4頁
軟件測試前景與技術(shù)(2016年企業(yè)版)_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

軟件測試前景與技術(shù)(2016年企業(yè)版)第一頁,共36頁。軟件測試的前景與技術(shù)演講者:XXX時間:2016-1-15下午地點:501會議室第二頁,共36頁。一、軟件測試行業(yè)前景二、軟件測試概述三、軟件測試方法四、軟件測試工具五、軟件的維護六、軟件知識的掌握七、結(jié)束語第三頁,共36頁。近年來,隨著我國軟件產(chǎn)業(yè)的蓬勃發(fā)展以及對軟件質(zhì)量的重視,軟件測試也越來越被軟件企業(yè)所重視,軟件測試成為了一個前景光明的新興產(chǎn)業(yè)。

目前,軟件測試的教學(xué)內(nèi)容已經(jīng)從以前作為軟件工程課程中的一章發(fā)展為一門獨立的課程,國外擁有計算機系的大學(xué)幾乎都開設(shè)了這門課程,在國內(nèi)目前開設(shè)的學(xué)校有限。當(dāng)然,學(xué)術(shù)界已經(jīng)把軟件測試作為一門重要的相對獨立的科學(xué)在研究;企業(yè)界則待著能夠培養(yǎng)出可以盡早發(fā)現(xiàn)軟件錯誤的專門人才,這樣可以盡量減少軟件開發(fā)維護的成本和日后因為軟件故障而造成的損失。由權(quán)威調(diào)查機構(gòu)發(fā)布的《2014年軟件測試從業(yè)人員調(diào)查報告》顯示,軟件測試行業(yè)呈現(xiàn)出以下幾大特征:一、軟件測試行業(yè)人才缺口大二、軟件測試人員稀缺三、軟件測試行業(yè)前景光明四、軟件測試人員多為培訓(xùn)后入職軟件測試行業(yè)前景第四頁,共36頁。一、軟件測試行業(yè)人才缺口大軟件測試從業(yè)人員的數(shù)量同實際需求有不小差距。國外知名IT企業(yè)中開發(fā)人員和測試人員比例通常為1∶1,微軟甚至達到1∶2,而根據(jù)《中國軟件行業(yè)發(fā)展藍皮書2011》,開發(fā)人員和測試人員的比例為5∶1,這導(dǎo)致交付的產(chǎn)品存在較大缺陷。也正因此,隨著企業(yè)對軟件質(zhì)量的重視,軟件測試人員巨大缺口體現(xiàn)出來了。下圖為各行業(yè)對軟件測試需求情況圖:軟件測試行業(yè)前景第五頁,共36頁。二、軟件測試人員稀缺然而,在被調(diào)查者所在公司中,測試人員與開發(fā)人員的比例在1:4及以上的高達55.13%。在這些公司中,49.66%的公司每年對測試人員進行的培訓(xùn)次數(shù)為0。也就是說,將近一半的軟件測試人員在工作后沒有進行培訓(xùn)學(xué)習(xí)的機會,這就要求想從事軟件測試的人員在入職前培訓(xùn)相關(guān)的技能,確保工作可以順利開展。軟件測試行業(yè)前景第六頁,共36頁。三、軟件測試行業(yè)前景光明在被調(diào)查者中,進行了一年左右軟件測試工作的人員占據(jù)了72.26%。其中,大專學(xué)歷及本科學(xué)歷的比例分別為34.93%和58.22%,他們的薪資在6000元及以上的占據(jù)了53.43%,軟件測試工程師薪酬高成為不爭的事實。軟件測試行業(yè)前景第七頁,共36頁。軟件測試行業(yè)前景四、軟件測試人員多為培訓(xùn)后入職由于目前我國高校開設(shè)軟件測試專業(yè)的學(xué)校并不多,大多數(shù)軟件測試人是在轉(zhuǎn)行后或者畢業(yè)就參加培訓(xùn)進入的軟件測試行業(yè)。調(diào)查顯示,被調(diào)查者中通過培訓(xùn)方式轉(zhuǎn)行的占據(jù)了58.22。第八頁,共36頁。1.軟件測試是什么?軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程。軟件測試是根據(jù)軟件開發(fā)階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計的一批測試用例(即輸入數(shù)據(jù)及預(yù)期的輸出結(jié)果),并利用這些測試用例去運行程序,以發(fā)現(xiàn)錯誤的過程。不同人的看法:理論知識、點點點、技術(shù)低軟件測試概述第九頁,共36頁。2.軟件測試的意義軟件測試的意義在于保證軟件產(chǎn)品的最終質(zhì)量,在軟件開發(fā)的過程中,對軟件產(chǎn)品進行質(zhì)量控制。一般來說軟件測試應(yīng)由獨立的產(chǎn)品評測中心負責(zé),嚴(yán)格按照軟件測試流程,制定測試計劃、測試方案、測試規(guī)范,實施測試,對測試記錄進行分析,并根據(jù)回歸測試情況撰寫測試報告。測試是為了證明軟件有缺陷,從而加以改正,而不是保證軟件沒有缺陷,缺陷是軟件與生俱來的。軟件測試概述第十頁,共36頁。中國火箭1992-1996年多次發(fā)射失敗1992年和1996年,中國航天都經(jīng)歷了一年中兩次發(fā)射失敗的慘痛。2000年11月,巴拿馬國家癌癥中心的放射線醫(yī)療儀的軟件出現(xiàn)BUG,導(dǎo)致8位病人因此死亡,醫(yī)生被控謀殺。軟件測試概述第十一頁,共36頁。系統(tǒng)中存在的功能、性能和安全等問題,協(xié)助系統(tǒng)驗收,而在軟件的需求、設(shè)計和編碼階段很少涉及,缺少對軟件整個生命周期的質(zhì)量全面把控。另一方面,由于第三方測試機構(gòu)是在項目后期介入,需求文檔可能相對滯后,且缺少后續(xù)開發(fā)過程中多次需求變更文檔,造成測試方在對軟件需求的把握上無法做到全面和到位,這對軟件測試的過程有一定影響。第三,第三方測試通常時間較短,在這種情況下,由于缺乏專用的第三方測試管理工具,造成測試團隊花費在測試管理的精力相對較多,測試人員對系統(tǒng)的測試往往是憑借經(jīng)驗,經(jīng)驗豐富的測試人員的知識和技能難以共享,這不利于整體軟件測試水平的提高。軟件測試方法第十二頁,共36頁。1.軟件測試技術(shù)的分類軟件測試技術(shù)是軟件開發(fā)過程中的一個重要組成部分,是貫穿整個軟件開發(fā)生命周期、對軟件產(chǎn)品(包括階段性產(chǎn)品)進行驗證和確認(rèn)的活動過程,其目的是盡快盡早地發(fā)現(xiàn)在軟件產(chǎn)品中所存在的各種問題——與用戶需求、預(yù)先定義的不一致性。檢查軟件產(chǎn)品的bug。寫成測試報告,交于開發(fā)人員修改。軟件測試方法第十三頁,共36頁。軟件測試方法第十四頁,共36頁。靜態(tài)測試是不執(zhí)行程序代碼而尋找程序代碼中可能存在的缺陷或評估程序代碼的過程。靜態(tài)測試包括主要由人工進行的代碼審查、代碼走查、桌面檢查以及主要由軟件工具自動進行的靜態(tài)分析。如果廣義地理解,靜態(tài)測試還包括軟件需求分析和設(shè)計階段的技術(shù)評審動態(tài)測試通過在抽樣測試數(shù)據(jù)上運行程序來檢驗程序的動態(tài)行為和運行結(jié)果以發(fā)現(xiàn)缺陷。動態(tài)測試包括生成測試用例、運行程序和驗證程序的運行結(jié)果3部分核心內(nèi)容,以及文檔編制、數(shù)據(jù)管理、操作規(guī)程及工具應(yīng)用等輔助性工作。動態(tài)測試最重要的問題是生成測試用例的策略。軟件測試方法第十五頁,共36頁。2.軟件生命周期V型圖V型圖描述了傳統(tǒng)軟件生命周期的各個階段,縱向關(guān)系體現(xiàn)了驗證的對象,橫向的對應(yīng)關(guān)系則體現(xiàn)的各類型的測試所所確認(rèn)的對象。軟件測試方法第十六頁,共36頁。單元測試是在軟件開發(fā)過程中要進行的最低級別的測試活動,在單元測試活動中,軟件的獨立單元將在與程序的其他部分相隔離的情況下進行測試,測試重點是系統(tǒng)的模塊,包括子程序的正確性驗證等。集成測試,也叫組裝測試或聯(lián)合測試。在單元測試的基礎(chǔ)上,將所有模塊按照設(shè)計要求,組裝成為子系統(tǒng)或系統(tǒng),進行集成測試。實踐表明,一些模塊雖然能夠單獨地工作,但并不能保證連接起來也能正常的工作。程序在某些局部反映不出來的問題,在全局上很可能暴露出來,影響功能的實現(xiàn)。測試重點是模塊間的銜接以及參數(shù)的傳遞等。系統(tǒng)測試是將經(jīng)過測試的子系統(tǒng)裝配成一個完整系統(tǒng)來測試。它是檢驗系統(tǒng)是否確實能提供系統(tǒng)方案說明書中指定功能的有效方法。測試重點是整個系統(tǒng)的運行以及與其他軟件的兼容性。驗收測試是檢驗軟件產(chǎn)品的最后一關(guān),在這一環(huán)節(jié),測試重點主要從用戶的角度著手,參與者主要是用戶和少數(shù)程序開發(fā)乘客員。軟件測試方法第十七頁,共36頁。軟件測試方法任何工程產(chǎn)品都可以使用白盒測試和黑盒測試兩種方法之一進行測試。3.1.黑盒測試已知產(chǎn)品的功能設(shè)計規(guī)格和用戶手冊,可以進行測試證明每個功能是否實現(xiàn)、每個實現(xiàn)了的功能是否符合要求,以及產(chǎn)品的性能是否滿足用戶的要求。3.黑盒測試與白盒測試第十八頁,共36頁。1.等價類劃分法等價類劃分是一種典型的、常用的黑盒測試方法。2.因果圖因果圖方法最終生成的就是判定表。它適合于檢查程序輸入條件的各種組合情況。3.判定表組成法條件樁(ConditionStub):列出了問題的所有條件.通常認(rèn)為列出的條件的次序無關(guān)緊要。動作樁(ActionStub):列出了問題規(guī)定可能采取的操作.這些操作的排列順序沒有約束。條件項(ConditionEntry):列出針對它左列條件的取值.在所有可能情況下的真假值。動作項(ActionEntry):列出在條件項的各種取值情況下應(yīng)該采取的動作。4.邊界值分析法邊界值分析是通過選擇等價類邊界的測試用例。邊界值分析法不僅重視輸入條件邊界,而且也必須考慮輸出域邊界。它是對等價類劃分方法的補充。5.正交試驗設(shè)計就是使用已經(jīng)造好了的正交表格來安排試驗并進行數(shù)據(jù)分析的一種方法,目的是用最少的測試用例達到最高的測試覆蓋率。軟件測試方法第十九頁,共36頁。3.2.白盒測試

已知產(chǎn)品的內(nèi)部工作過程,可以通過測試證明每種內(nèi)部操作是否符合設(shè)計規(guī)格要求,所有內(nèi)部成分是否以經(jīng)過檢查。

軟件的白盒測試是對軟件的過程性細節(jié)做細致的檢查,它允許測試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息,設(shè)計或選擇測試用例,對程序所有邏輯路徑進行測試,通過在不同點檢查程序狀態(tài),確定實際狀態(tài)是否與預(yù)期的狀態(tài)一致。因此白盒測試又稱為結(jié)構(gòu)測試或邏輯驅(qū)動測試。軟件測試方法第二十頁,共36頁。4.一些難以測的bug的分析多步驟引起的ppt程序掛掉(插入編程類,關(guān)閉是否提示保存)功能測試中,最為麻煩的則是多步驟引起的問題,學(xué)過數(shù)學(xué)排列的人應(yīng)該懂。有順序按鈕觸發(fā)可能性是A(n,n),舉例子,3個觸發(fā)點,排列組合就是A(3,3)=3!=6.A(10,10)=10!=3628800種組合。軟件測試方法第二十一頁,共36頁。軟件測試方法第二十二頁,共36頁。插入表格,行、列均取最大值,出現(xiàn)死機軟件測試方法第二十三頁,共36頁。5.用例設(shè)計:軟件測試用例就是一個文檔,描述輸入、動作、或者時間和一個期望的結(jié)果,其目的是確定應(yīng)用程序的某個特性是否正常的工作。軟件測試用例的基本要素包括測試用例編號、測試標(biāo)題、重要級別、測試輸入、操作步驟、預(yù)期結(jié)果,下面以圖來逐一介紹:軟件測試方法第二十四頁,共36頁。軟件測試方法第二十五頁,共36頁。軟件測試工具1.軟件測試工具是什么?軟件測試工具是通過一些工具能夠使軟件的一些簡單問題直觀的顯示在讀者的面前,這樣能使測試人員更好的找出軟件錯誤的所在。軟件測試工具分為自動化軟件測試工具和測試管理工具。軟件測試工具存在的價值是為了提高測試效率,用軟件來代替一些人工輸入。測試管理工具是為了復(fù)用測試用例,提高軟件測試的價值。一個好的軟件測試工具和測試管理工具結(jié)合起來使用將會使軟件測試效率大大的提高。第二十六頁,共36頁。2.工具分類如今國際上主要分為三類軟件測試工具:Mercury測試工具,Rational測試工具,Segue測試工具,qtp自動化測試工具和AutoRunner工具,占有市場90%以上。軟件測試工具第二十七頁,共36頁。3.測試內(nèi)容:負載壓力這類測試工具的主要目的是度量應(yīng)用系統(tǒng)的可擴展性和性能,是一種預(yù)測系統(tǒng)行為和性能的自動化測試工具。在實施并發(fā)負載過程中,通過實時性能監(jiān)測來確認(rèn)和查找問題,并針對所發(fā)現(xiàn)問題對系統(tǒng)性能進行優(yōu)化,確保應(yīng)用的成功部署。負載壓力測試工具能夠?qū)φ麄€企業(yè)架構(gòu)進行測試,通過這些測試,企業(yè)能最大限度地縮短測試時間,優(yōu)化性能和加速應(yīng)用系統(tǒng)的發(fā)布周期循環(huán)。功能測試通過自動錄制、檢測和回放用戶的應(yīng)用操作,將被測系統(tǒng)的輸出記錄同預(yù)先給定的標(biāo)準(zhǔn)結(jié)果比較,功能測試工具能夠有效地幫助測試人員對復(fù)雜的企業(yè)級應(yīng)用的不同發(fā)布版本的功能進行測試,提高測試人員的工作效率和質(zhì)量。其主要目的是檢測應(yīng)用程序是否能夠達到預(yù)期的功能并正常運行。白盒測試白盒測試工具一般是針對代碼進行測試,測試中發(fā)現(xiàn)的缺陷可以定位到代碼級。根據(jù)測試工具原理的不同,又可以分為靜態(tài)測試工具和動態(tài)測試工具。靜態(tài)測試工具直接對代碼進行分析,不需要運行代碼,也不需要對代碼編譯鏈接和生成可執(zhí)行文件。靜態(tài)測試工具一般是對代碼進行語法掃描,找出不符合編碼規(guī)范的地方,根據(jù)某種質(zhì)量模型評價代碼的質(zhì)量,生成系統(tǒng)的調(diào)用關(guān)系圖等。動態(tài)測試工具一般采用“插樁”的方式,在代碼生成的可執(zhí)行文件中插入一些監(jiān)測代碼,用來統(tǒng)計程序運行時的數(shù)據(jù)。它與靜態(tài)測試工具最大的不同是動態(tài)測試工具要求被測系統(tǒng)實際運行。測試管理一般而言,測試管理工具對測試需求、測試計劃、測試用例、測試實施進行管理,并且測試管理工具還包括對缺陷的跟蹤管理。測試管理工具能讓測試人員、開發(fā)人員或其他的IT人員通過一個中央數(shù)據(jù)倉庫,在不同地方就能交互信息。測試輔助這些工具本身并不執(zhí)行測試,例如它們可以生成測試數(shù)據(jù),為測試提供數(shù)據(jù)準(zhǔn)備。軟件測試工具第二十八頁,共36頁。1.軟件質(zhì)量的相關(guān)測試為什么要進行軟件測試:為了保證軟件質(zhì)量。β測試是由軟件的多個用戶(特定的用戶群)在實際使用環(huán)境下進行的測試。這些用戶返回有關(guān)錯誤信息給開發(fā)者。測試時,開發(fā)者通常不在測試現(xiàn)場。因而,β測試是在開發(fā)者無法控制的環(huán)境下進行的軟件現(xiàn)場應(yīng)用。在β測試中,由用戶記下遇到的所有問題,包括真實的以及主觀認(rèn)定的,定期向開發(fā)者報告。軟件質(zhì)量維護第二十九頁,共36頁。2.質(zhì)量把控的難度:1)系統(tǒng)中存在的功能、性能和安全等問題,協(xié)助系統(tǒng)驗收,而在軟件的需求、設(shè)計和編碼階段很少涉及,缺少對軟件整個生命周期的質(zhì)量全面把控。2)由于有些項目后期介入,需求文檔可能相對滯后,且缺少后續(xù)開發(fā)過程中多次需求變更文檔,造成測試方在對軟件需求的把握上無法做到全面和到位,這對軟件測試的過程有一定影響。3)測試通常時間較短,在這種情況下,由于缺乏專用的第三方測試管理工具,造成測試團隊花費在測試管理的精力相對較多,測試人員對系統(tǒng)的測試往往是憑借經(jīng)驗,經(jīng)驗豐富的測試人員的知識和技能難以共享,這不利于整體軟件測試水平的提高。軟件質(zhì)量維護第三十頁,共36頁。3.測試用例的復(fù)用測試用例的復(fù)用在提高軟件測試質(zhì)量,縮短測試周期,改善測試人員的經(jīng)驗不足,均起著十分重要的作用。目前,軟件測試復(fù)用的研究已成為軟件測試工程化研究的熱點之一。課題的研究對于指導(dǎo)測試用例庫的建設(shè),提高企業(yè)測試水平,拓展測試人員的交流,促進軟件測試產(chǎn)業(yè)的發(fā)展具有極其重要的指導(dǎo)意義。目前國內(nèi)外在軟件測試用例復(fù)用方面的研究,尚處于起步階段,大多數(shù)的研究都關(guān)注于測試用例庫的平臺搭建,把測試用例積累在一起提供給用戶使用。對于進一步提高測試用例庫的復(fù)用和管理,比如測試用例的可復(fù)用質(zhì)量分析、測試用例的復(fù)用評價、測試用例復(fù)用行為分析,測試用例復(fù)用合成等,缺乏完整的體系結(jié)構(gòu),降低了測試用例庫的使用效率。摘自:《軟件測試中測試用例復(fù)用的研究》張娟,2012,上海大學(xué),博士論文軟件質(zhì)量維護第三十一頁,共36頁。4.軟件測試的基本策略測試從需求開始需求定義是軟件生命的開始,準(zhǔn)確的需求是軟件測試的前提質(zhì)量從代碼抓起軟件質(zhì)量的基礎(chǔ)是“優(yōu)質(zhì)”的代碼軟件質(zhì)量維護第三十二頁,共36頁。1.軟件測試需要學(xué)習(xí)些什么技能?1.測試環(huán)境(網(wǎng)絡(luò)環(huán)境,windows操作系統(tǒng)環(huán)境等)

2.數(shù)據(jù)庫管理

3.編程技巧(java編程設(shè)計,腳本語言,設(shè)計工具,XML編程)

4.軟件測試技術(shù)(測試?yán)碚?,方法,流程,文檔寫作,測試工具,自動測試)

5.測試技術(shù)實踐軟件測試掌握技能第三十三頁,共36頁。2.應(yīng)如何展開工作?1.首先要有一個合理的詳細的測試計劃:

2.測試盡早介入項目詳細了解項目的業(yè)務(wù)需求,做好測試的前期準(zhǔn)備:

3.對測試項目前景充滿信心,調(diào)整最佳心態(tài),保持愉悅的工作心情:

4.提高測試接受的標(biāo)準(zhǔn),減少測試版本送測次數(shù):

5.測試負責(zé)人認(rèn)真做好測試文檔的評審:

6.加強項目組成員的相互溝通工作和項目信息收集工作:

7.積極配合開發(fā)人員工作,努力贏得開發(fā)人員的尊重和支持:

8.按照項目的大小不同,必要的情況下引入自動化測試工具

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論